0

Django を使用すると、テンプレートのコンテンツ セグメントでモデルから値を正常に読み取って表示できますが、テンプレートのヘッド セグメントでモデルから値を取得できません。

コードはこちら -->

ビュー.py:

from django.shortcuts import render_to_response
from django.template import RequestContext
from host.models import Event

def EventSingle(request, slug):
    return render_to_response('event.html', {'eventobject': Event.objects.get(slug=slug)})

event.html:

{% extends "base.html" %}

{% block extrahead %}
    <script type="text/javascript" src="https://ajax.microsoft.com/ajax/jQuery/jquery-1.4.2.min.js"></script>
    <script type="text/javascript">

        var variable1;
        variable1="click worked";
        //variable1={{ eventobject.datetime }};

        $(document).ready(function () {
            $("#pic").click(function (b) {
                alert(variable1);
            });
        });
    </script>   
{% endblock %}

{% block content %}
    <div id="eventobject">

        <p>{{ eventobject }}</p>
        <p>{{ eventobject.location }}</p>
        <p>{{ eventobject.datetime }}</p>

        <img id="pic" src="{{ eventobject.image1.url }}" />

    </div>

{% endblock %}

画像をクリックすると、「クリックが機能しました」というテキストが表示された警告ボックスがポップアップしますが、コメントアウトしてコメントを解除するvariable1="click worked";variable1={{ eventobject.datetime }};、画像をクリックしても何も起こりません。django テンプレートの head セクションでモデル参照を使用できませんか? コンテンツ ブロック内のモデルへの他のすべての参照は、DB からの値を適切に表示します。

4

2 に答える 2

0

Django docsごとに、日付フィルターを使用して日付をフォーマットできます。

variable1= '{{ eventobject.datetime|date:"d-m-Y" }}';

さらに、DATE_FORMAT (または DATETIME_FORMAT) 設定を設定して、そのような値を表示するためのプロジェクト全体のデフォルトを設定することもできます。

于 2013-05-29T08:38:59.487 に答える