【问题标题】:django, datetime into template could not parsedjango,模板中的日期时间无法解析
【发布时间】:2016-12-19 15:54:04
【问题描述】:

我收到此错误无法解析剩余部分:'(datetime.datetime.now()' from '(datetime.datetime.now()'

有问题的代码

{% if pr.update_news != "" and (datetime.datetime.now() - pr.update_date).days < 10 %}

好像不明白日期时间。 pr.update_date 它是一个日期字段到数据库中

【问题讨论】:

    标签: django datetime django-templates


    【解决方案1】:

    Django 模板语言是有限的,你不能像你做的那样嵌入任意 Python。

    您可以创建一个包含逻辑的模型方法。例如:

    from datetime import datetime
    
    class PR(models.Model):
        ...
        def has_recent_news(self):
            return self.update_news and (datetime.now() - self.update_date).days < 10
    

    然后在你的模板中,使用方法:

    {% if pr.has_recent_news %}
    

    请注意,您不要在模板中使用pr.has_recent_news()。你做pr.has_recent_news,Django 会自动调用该方法。

    【讨论】:

    • 谢谢,我在你的帖子之前修复了它,但同样的方式......记得“编写你的第一个 Django 应用程序”教程有这样的内容
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-14
    • 2023-02-15
    • 1970-01-01
    • 1970-01-01
    • 2019-02-09
    • 2015-06-17
    • 2019-01-21
    相关资源
    最近更新 更多