python - 避免重复 Django URL

标签 python django

我正在官方网站上制作 Django 教程,目前我是 setting up URLs对于我们正在创建的示例投票应用程序。

截至目前,我的 polls/urls.py看起来像这样:

from django.conf.urls import url

from . import views

urlpatterns = [
    url(r'^$', views.index, name='index'),
    url(r'^(?P<question_id>[0-9]+)/$', views.detail, name='detail'),
    url(r'^(?P<question_id>[0-9]+)/results/$', views.results, name='results'),
    url(r'^(?P<question_id>[0-9]+)/vote/$', views.votes, name='vote')
]

我不禁注意到 (?P<question_id>[0-9]+) 的重复所以我想知道除了将其提取为像QUESTION_PATTERN = (?P<question_id>[0-9]+)这样的常量之外是否有更简单的方法来避免这种情况

最佳答案

您可以包含一个子模式列表,如下所示:

urlpatterns = [
    url(r'^$', views.index, name='index'),
    url(r'^(?P<question_id>[0-9]+)/', include([
        url(r'^$', views.detail, name='detail'),
        url(r'^results/$', views.results, name='results'),
        url(r'^vote/$', views.votes, name='vote'),
    ]),
]

关于python - 避免重复 Django URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31165511/

相关文章:

python - Django 重新发送激活链接,缺少 1 个必需的位置参数 : 'user'

python - 如何对过滤后的搜索查询进行排序/排序并将其呈现在 Django 上的另一个模板上?

python - 检查Django模板中列表变量项中是否存在某些内容

python - 在给定范围内对所选数字的合理猜测

python numpy 变异选择

python - 在 Python 中重现 MATLAB 的 imgaborfilt

Python tox 依赖项安装输出

python - 在Python字符串中打印撇号

python - Django:生成 CSV 文件并将其存储到 FileField

python - 如何记录 Django REST Swagger 2 中的参数?