访问django模板中的模型字段

时间:2013-03-26 16:53:38

标签: django templates model

我正在尝试访问模板中的模型字段。我在if语句中使用了这个字段:

{% for event in events %}
{% if event.homepage == 'False' %}
  <tr class='teamRow'>
    <td id='day' class="rowCell">
      {{ event.date }} {{ event.homepage }}
    </td>
  </tr>
{% else %}
  <p>Else</p>
{% endif %}
{% endfor %}

if语句不正确。我知道这是真的,因为{{event.homepage}}返回“False”。

事件模型:

class Event(models.Model):
    homepage = models.BooleanField()

我在视图中传递了模型:

def renderHomeNew(request):
events = Event.objects.all()
t = get_template('base_home_new.html')
context = {
    'events': events
    }
c = template.Context(context)
r = t.render(c)
return HttpResponse(r)

这里没有遵循正确的语法?我没有错。

1 个答案:

答案 0 :(得分:2)

您正在尝试将布尔值与字符串进行比较。您的Event - 模型的homepageBooleanField。尝试:

{% if not event.homepage %}

另见:

https://docs.djangoproject.com/en/dev/ref/templates/builtins/#boolean-operators https://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.BooleanField