当前位置: 首页 > 面试题库 >

如何在Django模板中比较日期

包建义
2023-03-14
问题内容

我想将日期与Django中的当前日期进行比较,最好是在模板中进行比较,但是也可以在渲染模板之前进行比较。如果日期已经过去,我想说“过去”,而如果将来,我想说出日期。

我希望有人可以做这样的事情:

{% if listing.date <= now %} 
     In the past 
{% else %} 
     {{ listing.date|date:"d M Y" }} 
{% endif %}

现在是今天,但是这不起作用。我在Django文档中找不到有关此的任何内容。任何人都可以给点建议吗?


问题答案:

比较视图中的日期,然后将类似in_the_past(boolean)的值传递给extra_context。

或者最好将其作为属性添加到模型中。

from datetime import date

@property
def is_past_due(self):
    return date.today() > self.date

然后在模板中:

{% if listing.is_past_due %}
    In the past
{% else %}
    {{ listing.date|date:"d M Y" }}
{% endif %}

基本上,模板不是IMO进行日期比较的地方。



 类似资料:
  • 问题内容: 如何在Java中比较两者之间的日期? 例: date1是 date2是今天 date3是 总是大于和今天始终。如何验证今天的日期是否在和之间? 问题答案: 日期有之前和之后的方法,可以相互比较,如下所示: 进行包容性比较: 你也可以尝试一下Joda-Time,但请注意: Joda-Time是Java SE 8之前的Java的事实上的标准日期和时间库。现在,要求用户迁移到java.tim

  • 问题内容: 我正在尝试比较两个日期,而我只想比较日期部分而不是时间部分,这就是我在程序中存储日期的方式: 我有一个: 我想用 但是由于还涉及时间部分,所以我无法获得正确的答案。我该如何解决我的问题? 我不想使用JODA-TIME 问题答案: 您可以像这样逐个比较价值 要么 如果您使用Date类,请考虑改用Calendar类这是最优雅的解决方案,为此使用Calendar和Comparator 用法:

  • 问题内容: 如果日期格式为和,如何在php中比较两个日期。 我正在使用此代码: 但它不起作用.. 问题答案: 您必须确保您的日期是有效的日期对象。 尝试这个: 然后,您可以执行该方法来获得差异。

  • 问题内容: 如何在PHP中比较两个日期? 在数据库中,日期看起来像2011-10-2。 如果我想将今天的日期与数据库中的日期进行比较,看哪个更大,我该怎么做? 我试过了 但这并不是真的那样。还有另一种方法吗? 更新:我知道这篇文章有点老,但是我只想提及carbon,它是与laravel一起使用的一类,但可以与经典php一起使用,并且它确实与日期有关。检查一下:碳 问题答案: 在数据库中日期看起来像

  • 我在android studio中使用firebase创建了一个聊天应用程序,我的所有活动都正常运行,除了日期显示, 我想设置日期在一次如果它是相同的否则显示新的日期如果它是不相同的上一个日期我试图设置但它显示一些错误 这里是错误 我获取当前日期 然后把它交给聊天室。java使用按钮。OnclickListner 这是我的适配器 有人知道怎么解决这个问题吗?

  • 问题内容: 这是我正在尝试执行的一些代码片段: 我似乎无法比较日期和日期时间值。比较这些的最佳方法是什么?我应该将日期时间转换为日期还是相反?我如何在它们之间转换。 (一个小问题,但似乎有点令人困惑。) 问题答案: 使用该方法将日期时间转换为日期: 或者,您可以使用代替。你可以用 消除之后的时间部分。