You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Wagtail模板中访问默认页面模型?

解决Wagtail模板中访问发布日期的问题

嘿,我来帮你搞定这个问题!其实你完全不用更换页面模型——你的SomeClass继承自Wagtail的Page基类,而Page本身就自带published_date字段,只是可能有几个小细节你没注意到:

几个关键检查点

  • 页面是否已发布:published_date只有在页面正式发布后才会被赋值,草稿状态下这个字段是空的。先去Wagtail后台把你的页面点击「发布」试试。
  • 模板变量拼写:确保你写的是{{ page.published_date }},注意大小写(Wagtail里这个字段是小写开头的,别写错成驼峰式)。
  • 日期格式化处理:直接输出日期对象可能显示不友好,甚至在某些环境下看起来像没生效,建议用Django的date过滤器格式化:
    {{ page.published_date|date:"F j, Y" }}
    
    换成中文常用格式就是:
    {{ page.published_date|date:"Y年m月d日 H:i" }}
    

修改后的模板示例

给你一个完整的模板参考,加上日期显示和空值判断(避免页面未发布时出现空白内容):

{% extends "base.html" %}
{% load wagtailcore_tags %}

{% block base_content %}
    {{ page.intro }}
    {{ page.body_small }}
    
    {% if page.published_date %}
        <p class="published-date">发布于: {{ page.published_date|date:"Y年m月d日" }}</p>
    {% endif %}
{% endblock %}

额外小提示

Wagtail的Page基类还自带其他实用的日期字段,你也可以按需使用:

  • first_published_at:页面第一次被发布的日期
  • last_published_at:页面最后一次更新发布的日期

内容的提问来源于stack exchange,提问作者Igoranze

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:09:06