在Django模板中显示当前年份和月份,最直接的方法是使用内置的 {% now %} 模板标签。

🎯 核心方法:使用 {% now %} 标签

{% now %} 标签会根据你指定的格式字符串来显示当前日期和时间。这个格式字符串的规则和Python的 strftime 函数类似。

显示年份

  • 显示四位数的年份(例如:2026):

    {% now "Y" %}
    
  • 显示两位数的年份(例如:26):

    {% now "y" %}
    

显示月份

  • 显示完整的月份名称(例如:August):

    {% now "F" %}
    
  • 显示缩写月份名称(例如:Aug):

    {% now "M" %}
    
  • 显示两位数字的月份(例如:08):

    {% now "m" %}
    
  • 显示一位或两位数字的月份(例如:8):

    {% now "n" %}
    

💡 组合与赋值

你可以组合多个格式字符来获得想要的格式:

{# 显示 "August 2026" #}
今天是 {% now "F Y" %}

{# 显示 "08-2026" #}
今天是 {% now "m-Y" %}

如果想在模板中多次使用同一个日期值,可以用 as 关键字将其保存为一个变量:

{% now "Y" as current_year %}
{% now "F" as current_month %}
<p>© {{ current_year }} 公司名</p>
<p>当前月份:{{ current_month }}</p>

⚠️ 注意事项

  • 时区{% now %} 默认使用Django的当前时区。如果需要,你可以使用 {% timezone %} 标签来临时切换时区。
  • 更多格式{% now %} 标签支持非常丰富的格式选项,可以精确控制日期和时间的显示。