嗨,我需要檢查我的Django模板文件中的每個月的第10日,有人可以告訴我如何重複檢查這個 我需要顯示一些數據之前每個月10日和隱藏後10在Django模板中獲取特定的日期Django
回答
有幾件事情就明白了:
- Django的模板語言是不是真的圍繞「實」的編程設計。它的核心是建立字符串。
- 它不支持真正的「表達式」。
- ...但它支持基本條件和循環。
- 所以,雖然你可以檢查一個值是否等於或大於或小於另一個值,但你不能做的比這更多。
- 除非您使用過濾器或自定義模板標記。
- 過濾器可以將值從一個事物轉換爲另一個事物。
- 模板標籤可以做更復雜的事情,這超出了這個問題的範圍。
- 雖然過濾器或自定義模板標籤可能會到達您想要去的地方,但它們會過度殺傷。
所以,在我看來,要做到這一點最簡單的方法是:
- 在你看來,計算當前日期的日子。
- 將該值傳遞給您的模板。
- 做一個簡單的「如果大於」檢查的值傳遞的對數10
因此,我們的觀點看起來是這樣的:
def sample_view(request, *args, **kwargs):
from datetime import date
current_date = date.today()
current_day = int(current_date.day) # force a cast to an int, just to be explicit
return render_to_response("template", {'day_of_the_month': current_day })
而在我們的模板中,我們會更多信息:
{% if day_of_the_month > 10 %}
<!-- Stuff to show after the 10th -->
{% else %}
<!-- Stuff to show before the 10th -->
{% endif %}
這不暴露的東西到您的模板你可以根據日期出於安全原因被隱藏。 您不應該根據if/then檢查來隱藏模板中的安全事物。
如果您需要進行額外的支票,您可以傳入current_date
,並在數字10中檢查current_date.day
,而不是在當天特意通過。它不太明確,但更通用,更靈活。
嗨,我已經在模板中使用變量day_of_the_month,但它給了我像2013年3月14日的值,但我只需要只有14天的值,我該如何過濾 – user2106353 2013-03-14 09:08:34
請確保您已通過current_day而不是current_date。 – 2013-03-14 09:24:52
對不起,親愛的,你是對的,我已經通過了錯誤的變量,但它現在好好感謝很多 – user2106353 2013-03-14 09:33:23
- 1. 如何在Django模板中獲取日期格式
- 2. 在Django模板中獲取特定的用戶信息
- 3. 在Django模板中格式化日期
- 4. 比較模板中的日期Django
- 5. 獲取特定時區中的當前日期django
- 6. Django的獲得或我使用Django 1.10某一特定日期
- 7. 在模板中獲取Site_ID Django
- 8. Django - 系統日期和Django模板中的差異標記日期
- 9. Django模板標籤以獲取特定的表單域
- 10. Django模型|獲取特定列
- 11. 多個獲取在Django的模板
- 12. Django:在模板中以特定順序獲取相關模型數據
- 13. django基本模板日期呈現
- 14. Django的頁面特定模板
- 15. 如何從Django模板中獲取MEDIA_URL?
- 16. Django的特權模板
- 17. 在django的特定日期取消發佈文章
- 18. 在Django的url模板標籤中使用日期
- 19. 在Django模板中的三角洲日期
- 20. 顯示特定標籤django模板
- 21. 重定向在Django模板
- 22. 從django數組中獲取特定值
- 23. 如何從模板中的Django social-auth獲取特定提供者?
- 24. 如何在Django模板中獲取模型的對象數?
- 25. 獲得Django的模板
- 26. 在Django模板
- 27. 在Django模板
- 28. 在Django模板
- 29. 在Django模板
- 30. 在Django模板
你到目前爲止做了什麼?代碼? – catherine 2013-03-14 05:08:46