问题描述
我有一个简单的网站,需要在其中解析这样的网址:
http://127.0.0.1:8000/products/updateproduct?id=1
所以我为此写了以下django路径:
path('updateproduct?id=<int:id>',views.updateProduct,name='updateproduct'),
我也这样尝试过:
path('updateproduct',
这两个路径都被附加到网址的/product/
部分,如下所示:
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')