我从jquery发送GET请求:
http://127.0.0.1:8000/viewspecs/itemdetails?param1="+variable1+"¶m2="+ variable2
此部分的django中的urls.py文件类似于:
url(r'^viewspecs/itemdetails?param1=(?P<specs_search_item>[\w\+%_ ./-]+)¶m2=(?P<item_price>[0-9])$', views.specsView),
当我访问该地址时,我得到一个页面而不是(404)错误。为什么?
答案 0 :(得分:6)
你的网址应该是,
def specsView(request):
param1 = request.GET['param1']
param2 = request.GET['param2']
视图就像,
http://127.0.0.1:8000/viewspecs/itemdetails/param1/param2
如果你想传递参数,
url(r'^viewspecs/itemdetails/(?P<param1>[\w-]+)/(?P<param2>[\w-]+)/$', views.specsView),
然后网址将是,
def specsView(request, param1, param2):
pass
视图将是这样的,
{{1}}
答案 1 :(得分:0)
如果你打算使用这种方法
def specsView(request):
param1 = request.GET['param1']
param2 = request.GET['param2']
使用 .get() 函数
def specsView(request):
param1 = request.GET.get('param1')
param2 = request.GET.get('param2')
因为即使缺少参数也不会抛出任何错误 (或可选)