如何在Django URL的开头使用变量返回视图?

时间:2019-03-11 12:03:04

标签: django django-urls

我正在尝试将Django URL的第一部分传递给视图,因此我可以按URL中的术语过滤结果。

看着documentation,这似乎很简单。

但是,我有以下urls.py

url('<colcat>/collection/(?P<name>[\w\-]+)$', views.collection_detail, name='collection_detail'),
url('<colcat>/', views.collection_view, name='collection_view'),

在这种情况下,我希望能够转到/living并将living传递到我的视图中,以便可以使用它进行过滤。

但是,尝试此操作时,无论我输入的网址是什么都不匹配,并且我收到一条错误消息,说我输入的地址无法与任何网址匹配。

我想念什么?

1 个答案:

答案 0 :(得分:1)

SELECT W.*, DATEDIFF(YEAR, W.HireDate, W.TermDate) FROM WORKERS W WHERE TermDate > '2013-12-31' AND TermDate < '2015-01-01'; 不是有效的正则表达式。您需要使用与<colcat>相同的格式。

name

或者,使用新的url('(?P<colcat>[\w\-]+)/collection/(?P<name>[\w\-]+)$', views.collection_detail, name='collection_detail'), url('(?P<colcat>[\w\-]+)/$', views.collection_view, name='collection_view'), 表单,它将更简单:

path