我有一个带有单个链接的简单网页,index.html
:
<a href='/dog/?owner=' + data['owner'] + '&breed=bulldog'>Dog</a>
此处数据通过服务器动态传递。
urls.py
具有要调用的方法定义:
...
url(r'^dog/$',
TemplateView.as_view(template_name='dog.html'),
name='dog'),
url(r'^ajax/dog/$',
views.dog,
name='ajax/dog'),
...
我的views.py
具有定义的方法:
def dog(request):
owner = request.GET['owner']
LOG.info(owner)
breed = request.GET['breed']
LOG.info(breed)
...
单击index.html
中的链接时出现以下错误:
...
File "/mnt/virtualenv/local/lib/python2.7/site-packages/django/utils/datastructures.py", line 295, in __getitem__
raise MultiValueDictKeyError("Key %r not found in %r" % (key, self))
MultiValueDictKeyError: "Key 'breed' not found in <QueryDict: {u'owner': [u'kevin_lawder']}>"
我真的很困惑为什么QueryDict字典中存在一个查询参数,而另一个却不存在。我尝试将request.GET['breed']
替换为request.GET.get('breed')
,但返回None
。
我在这里想念什么?