2
说我有一个URL设置像这样在我的Django 1.6项目:重定向到包含网址,RedirectView的
urlpatterns = patterns('',
url(r'^some-path/', include('someapp.urls')),
url(r'^$', RedirectView.as_view(url='some-path/', permanent=False)),
)
...但我想改变“一些路径”,以“改变路径”,而是和在这个过程中意识到我已经在一个额外的地方硬编码:RedirectView
设置!
有没有适当的方式来做这样的事情,扭转到一个包含的网址捆绑?所有的
# NOT WORKING! Django ignores `name=` when using `include()`
urlpatterns = patterns('',
url(r'^changed-path/', include('someapp.urls'), name='foo'),
url(r'^$', RedirectView.as_view(pattern_name='foo', permanent=False)),
)
谢谢;我特别欣赏命名空间示例。不幸的是,这也是我害怕的 - 在重复自己(如我的问题)或者必须将父逻辑与孩子的内部细节(如在答案中)绑定之间似乎是一个不好的选择。我认为你的后一种方式可能会更好,因为无论何时我构建URL,我都需要知道跨应用的名称。 – natevw 2014-08-29 17:31:06