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

Wagtail CMS页面发布故障求助:无发布按钮且访问404

Wagtail 页面发布失败&404问题排查与正确流程

一、预览模式找不到「Publish」按钮的原因

Wagtail的「Publish」按钮不在预览模式里,它在页面编辑界面的右上角操作栏——草稿状态下会显示「Publish」或「Submit for moderation」,具体取决于你的权限和页面配置。

如果编辑界面也没看到「Publish」按钮,检查这几点:

  • 你的账号所属用户组是否有「发布页面」权限:进入后台「Settings > Groups」,查看对应组的权限列表,确保勾选了「Publish pages」;
  • 页面类型是否开启了审核机制:如果你的页面模型里设置了moderation_enabled = True,草稿页面需要先提交审核,由管理员发布,你作为创建者看不到直接发布按钮;
  • 页面是否已经提交审核:如果页面显示「Submitted for moderation」状态,你无法直接发布,需等待管理员处理。

二、页面404的核心原因

你访问test1/出现404,主要是两个问题:

  1. 页面仅保存为草稿,未发布:Wagtail只有已发布的页面能通过前端URL访问,草稿页面只能在后台预览或编辑;
  2. 页面父级设置错误:如果你的页面不是直接创建在根页面(「Welcome to your new Wagtail site!」)下面,URL应该是父页面slug/test1/,而非直接test1/。

三、正确的Wagtail页面发布流程(适配6.0.2版本)

  1. 创建页面:进入后台「Pages」板块,点击右上角「Add page」,选对应的页面类型,确认父页面选根页面(或你想要的父级页面),填完标题后保存为草稿;
  2. 编辑并发布:在编辑界面完善内容后,点击右上角的**「Publish」按钮**(如果显示「Submit for moderation」,就提交审核等管理员处理);
  3. 确认发布状态:发布成功后,页面会显示「Live」状态,在「Pages」列表里能看到页面旁的绿色「Live」标识;
  4. 访问页面:如果是根页面的直接子页面,访问https://你的域名/页面slug/;如果是嵌套子页面,URL格式是父页面slug/子页面slug/。

四、额外排查点

  • 检查页面「Status」标签:在编辑界面的「Status」标签里,确认页面状态是「Live」,不是「Draft」或「Submitted for moderation」;
  • 清理缓存:页面已发布但还是404的话,执行python manage.py clear_cache清理Django缓存,或者用Ctrl+F5刷新浏览器硬缓存;
  • 确认URL配置:你的项目urls.py里的Wagtail路由^((?:[\w\-]+/)*)$ [name='wagtail_serve']是正确的,不用修改。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 11:07:16