【问题标题】:Django flatpages middlewareDjango flatpages 中间件
【发布时间】:2017-09-05 01:15:59
【问题描述】:

在使用 FlatpageFallbackMiddleware 时,我无法让 flatpages 应用程序正常工作 - 当我转到 /about/ 时它会产生 404 错误。虽然当我删除中间件并将 URL 硬编码到我的根 urls.py 时,它确实正确显示了页面。

根据我目前所阅读的内容,以下是一些似乎相关的代码部分:

网站设置:

SITE_ID = 1

中间件设置:

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'django.contrib.flatpages.middleware.FlatpageFallbackMiddleware',
    'reversion.middleware.RevisionMiddleware',
    'codex.core.middleware.AuditTrailMiddleware',
]

我创建的平面页面:

我得到的结果:

我尝试重新排序中间件,尝试注释掉一些非标准中间件以查看是否干扰了 flatpages 中间件,但我仍然得到 404。

如果有人能指出正确的方向,我很乐意提供任何相关的屏幕截图或代码。

谢谢。

编辑添加:

根 urlconf:

【问题讨论】:

  • INSTALLED_APPS 和根 urlconf 怎么样?
  • INSTALLED_APPS = [ # Django 'flat_responsive', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', ' django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.admindocs', 'django.contrib.sites', 'django.contrib.flatpages', # Rest is too long to fit in comment ]
  • 请编辑问题
  • 完成 - 谢谢,这是一个更好的方法。
  • 太棒了。屏幕截图通常不受欢迎。请复制粘贴文本。无论如何,请检查答案。会有你的问题

标签: django


【解决方案1】:

似乎没有包含平面网址的条目。

它看起来像:

urlpatterns = [
    url(r'^', include('django.contrib.flatpages.urls')),
]

Here is the documentation

【讨论】:

  • 这似乎已经解决了。我曾认为在使用中间件时,它不再需要包含在 url 中。我会去仔细阅读文档。再次感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 2011-04-03
  • 1970-01-01
  • 1970-01-01
  • 2010-12-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多