Django忽略路径中的获取参数

Django忽略路径中的获取参数,django,url,path,Django,Url,Path,我有一个简单的网站,我需要解析如下url: http://127.0.0.1:8000/products/updateproduct?id=1 path('updateproduct', views.updateProduct, name='updateproduct'), path('products/', include('products.urls')), 因此,我为它编写了以下django路径: path('updateproduct?id=<int:id>', vie

我有一个简单的网站,我需要解析如下url:

http://127.0.0.1:8000/products/updateproduct?id=1
path('updateproduct', views.updateProduct, name='updateproduct'),
path('products/', include('products.urls')),
因此,我为它编写了以下django路径:

path('updateproduct?id=<int:id>', views.updateProduct, name='updateproduct'),
这两个路径都附加到url的
/product/
部分,如下所示:

http://127.0.0.1:8000/products/updateproduct?id=1
path('updateproduct', views.updateProduct, name='updateproduct'),
path('products/', include('products.urls')),

基本上,我希望django匹配以
updateproduct
开头的任何路径,并忽略任何get变量(以及之后的所有内容)。这可能吗?

django在将url与视图匹配时自动忽略查询

因此:

http://127.0.0.1:8000/products/updateproduct?id=1  &&  http://127.0.0.1:8000/products/updateproduct?id=10&name=value

都将由同一视图处理

如果要访问视图中的查询,则需要使用

request.GET['id']
# or
request.GET.get('id')

查询参数(在
之后的内容)总是被路由器忽略。您可以通过
请求在视图中访问它们。获取
。如果要匹配以“updateproduct”开头的任何路径,可以使用正则表达式并忽略其余字符串,例如
path\u re(r'^updateproduct/*',views.updateproduct,name='updateproduct'),
我想我理解你的意思,尽管我认为它在django中被称为re\u path