如何确保Django CMS初始化应用程序URL?

时间:2019-06-29 18:19:21

标签: python django django-cms

我正在尝试启动Django CMS应用。所有应用程序挂钩均已正确设置并注册。例如,使用NewsHook

class NewsHook(CMSApp):
    """ A class to hook the News into the django cms
    """
    name = ("News")
    urls = ["apps.news.urls"]


apphook_pool.register(NewsHook)

此挂钩的urls.py包括以下内容:

urlpatterns = [
    # /feed/
    url(r'^feed/$', ArticlesFeed(), name='news_feed'),
]

该项目的urls.py(在settings文件夹下)包括以下相关行:

admin.autodiscover()

urlpatterns = patterns(
    '',
    ...
    # / -> Django CMS
    url(r'^', include('cms.urls')),
)

这一切看起来很正常,对吧?但是当我访问主页时,出现NoReverseMatch错误:

enter image description here

不确定我在做什么错...这是我没有看到的一面吗?顺便说一句,这个应用程序在生产中运行良好,因此据我所知它没有任何错误。

我的规格

  • Django版本:1.8.13
  • Django CMS版本:3.3.0
  • Python版本:2.7。

1 个答案:

答案 0 :(得分:0)

我发现这些Django CMS应用程序需要附加到页面上,才能将URL添加到项目中。我从生产中加载了页面表,并且url开始起作用。

使这些URL依赖于页面的存在对我来说真的是违反直觉的,来自Rails。