我正在尝试使用字典将关键字参数传递给Django视图,但是当我尝试访问URL时,我一直遇到TypeError(错误是:“add_business_contact()得到了一个意外的关键字参数'info_models' “)。代码是:
urlpatterns = patterns('business.views',
# ...
url(r'^(?P<business_id>[\w\._-]+)/edit_contact$', 'add_business_contact', {
'info_models': [Email, PhoneNumber, URL] }, name='business_contact'),
# ...
)
和相应的观点:
@login_required
def add_business_contact(request, business_id, *args, **kwargs):
# ...
info_models = kwargs.pop('info_models', None)
# ....
如果我从url()函数中删除了字典参数,它很高兴地到达并运行视图(虽然它没有那个参数但是不正确)。关于它为什么这样做的任何想法?我正在关注Django Book中的一个例子(http://djangobook.com/en/2.0/chapter08/),如果这有帮助的话。
答案 0 :(得分:1)
糟糕。有点尴尬,但我在处理它时复制/粘贴了该功能,并没有重命名原件。现在按预期工作......