【发布时间】:2017-06-15 18:40:02
【问题描述】:
我的 Django 项目“animals”有一个名为“birds”的应用程序。在 animal/urls.py 中,“birds” URI 被路由到 bird/urls.py,如下所示:
urlpatterns=[
url(r'^birds/', include('birds.urls')),
url(r'^b/', include('birds.urls')), # alias
]
“birds/”是官方的、永久的基础 URI; “b/”被接受为快捷方式/别名。
如何将“b/” URI(永久)重定向到“birds/”,这样即使用户可以输入“b/penguin”,浏览器的地址栏也会(最终)显示“birds/”企鹅”?我不想接触“鸟”应用程序中的任何代码,因为它不应该知道(关心)项目如何将 URI 映射到应用程序。
我试过用
RedirectView.as_view(pattern_name='birds'))
但这会导致 410 Gone 响应。和
RedirectView.as_view(url='/birds/'))
将 /b/penguin 重定向到 /birds/,杀死我的鸟。
【问题讨论】:
标签: django django-urls django-apps