【发布时间】:2012-02-26 20:25:30
【问题描述】:
我正在使用 django-cms,我想为现有应用程序创建一个 app-hook。如果我选择显示 app-hook 的页面不是主页,这很好。
这是我正在挂接的应用程序的 urls.py:
from django.conf.urls.defaults import patterns, include, url
urlpatterns = patterns('films.views',
url(r'^$', 'index'),
url(r'^(?P<film_id>\d+)/$', 'detail'),
)
cms_app.py如下:
from cms.app_base import CMSApp
from cms.apphook_pool import apphook_pool
from django.utils.translation import ugettext_lazy as _
class FilmApphook(CMSApp):
name = _("Film Apphook")
urls = ["films.urls"]
apphook_pool.register(FilmApphook)
我有网址:
/ (<- set to have the slug home, but django-cms doesn't seem to serve it at /home if it's the startpage)
/news
/...
当我将主页设置为具有 app-hook 时,它会呈现我的电影的索引。views,购买我会得到一个 404 去任何细节操作。
即
/ <- correctly renders films.index
/home <- 404
/home/1 <- 404
/1 <- 404
如果我将 app-hook 改为在新闻下,一切正常,(或者如果我将另一个页面设为主页)。
/news <- correctly renders films.index
/news/1 <- correctly renders films.detail
问题似乎是 django-cms 忽略了起始页的 slug,有没有办法解决这个问题?
我可能应该提到,我已经尝试设置覆盖 url 来解决这个问题,当 /home 被提供时,/home/1 仍然给出 404。
【问题讨论】:
标签: django django-cms