有一個奇怪的問題。比方說,在我的內容模型:Django模板:如何基於模型中的布爾字段顯示HTML塊
show_in_posts = models.BooleanField()
show_in_news = models.BooleanField()
show_in_updates = models.BooleanField()
然後在我的{% for content in contents %}
模板:
{% if content.show_in_news == 'True' %}
....
{% endif %}
似乎無法獲得的條件工作。看起來{{ content.show_in_news }}
總是評估爲True,即使它在管理面板中設置爲未選中狀態。我試過沒有引號{% if content.show_in_news == True %}
也試過全部小寫真,或者只是{% if content.show_in_news %}
不行。
其他一些帖子建議註冊一個自定義的「過濾器」,但這似乎很微不足道,應該開箱即用?
非常感謝的幫助!
什麼'{{content.show_in_news}}'給你? –
每個以上,即使複選框未在管理員中被選中,似乎總是「真」。 – pete
有些事情肯定是錯誤的。即使我的其他布爾值都在模板中打印爲「真」,但它們在數據庫中肯定設置爲關閉。我可以在管理員中切換它們並保存 - 它們變成紅色的「停止標誌」圖標,切回並保存,返回到「綠色選中標記」 - 一切正常。我只是不能讓他們通過模板來通過除True以外的其他任何模板。其他類型,例如CharField,TextArea顯示正常..呃,什麼給出:( – pete