簡體   English   中英

無法訪問Django模板中的屬性

[英]Cannot Access Attribute In Django Template

視圖:

def details(request, id):
    event = Event.objects.filter(id=id)
    return render(request, 'details.html', {'Event' : event})

模板:

{% if Event %}

    <h1>Event Name: {{ Event.name }}</h1>

{% else %}

    No Event.

{% endif %}

模型:

class Event(models.Model):
    name = models.CharField(max_length = 30)
    artist = models.ManyToManyField(Artist)
    venue = models.ForeignKey(Venue)
    event_date = models.DateTimeField('event date')
    on_sale = models.DateTimeField('on sale time')


    def __unicode__(self):
        return unicode(self.name)

當我加載頁面時,它只會加載Event Name: 當我刪除.name屬性時,它將加載在數據庫中輸入的事件,但不會從該對象加載任何屬性。 感謝任何幫助/建議,謝謝。

您應該使用get而不是filter:

event = Event.objects.get(id=id)

如果要在模板中使用過濾器,請嘗試以下操作:

{% for item in Event %}
    <h1>Event Name: {{ item.name }}</h1>
{% empty %}
    No Event.
{% endfor %}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM