Django Flatpage给予404 - 但是一个Flatpage工作

时间:2016-04-27 18:42:01

标签: django http-status-code-404 django-flatpages

使用Django 1.9,Python 3.4 ......

最近,我修改了我的flatpages以使用class_prepared方法获取自定义字段:

http://docs.djangoproject.com/en/dev/ref/signals/#class-prepared

目前,我在网址/about/的数据库中已经有一个平面页面。实现上述功能后,我成功地使用数据调整了新字段,一切正常。

然后我在/contact/添加了另一个自定义字段的平面页面,只是为了确保一切正常,并且它给出了404。

我首先认为我的URLConf不起作用。所以我测试了几个变体,包括Django docs中的catch和所有特定条目:

url(r'^about/', views.flatpage, {'url': '/about/'}, name='about'),
url(r'^contact/', views.flatpage, {'url': '/contact/'}, name='contact'),

但这些都没有奏效。

我发现SITE_ID有些references错了,我通过查询数据库并检查调试信息确认我的是正确的。

我还确认了数据库中的数据,表django_flatpage显示了我所做查询的2行。

我错过了什么?

1 个答案:

答案 0 :(得分:0)

我打算删除这篇文章,但后来我意识到......也许别人会遇到同样的问题,并找到答案。我正撞在墙上,我终于想通了。这很奇怪,有时在我发布SO或其他SE板后不久,我发现我的问题是什么......

无论如何,在我的ExtendedFlatPageAdmin我的fieldset中未包含sites字段。一旦我添加了这个,我就可以回到Django管理员,并重新打开平面页面。然后它没有给出404。