3

我只是按照http://docs.djangoproject.com/en/dev/ref/contrib/flatpages/设置了 django 的 flatpages 应用程序

一切都很好,但是当我链接到平面页面时,我总是得到:

Page not found (404)
Request Method:     GET
Request URL:    http://example.com/about/

[..]

The current URL, about/, didn't match any of these.

那是怎么回事?什么可能导致此错误?

提前致谢...

4

1 回答 1

7
  1. 您的 MIDDLEWARE_CLASSES 列表中有 FlatpageFallbackMiddleware 吗?

  2. 您的数据库中是否肯定有一个在 URL 字段中带有 /about/ 的平面页面?

  3. 平面页面是否链接到正确的站点对象?它必须使用与您的 settings.py 中的 SITE_ID 匹配的数字 ID 链接到 Site 对象。在这种情况下,站点对象的实际名称/域无关紧要,它只是您必须注意的数字 ID。以我的经验,这是神秘地丢失平面页面的最常见原因。

粘贴的 404 中的请求 URL“ http://example.com/about/ ”令人困惑——我假设你把它放在那里是为了隐藏你的实际域?因为如果实际请求 URL 位于 example.com,您将不会得到这个 Django 调试页面。

于 2009-09-06T14:25:16.540 回答