我正在尝试使用字典将关键字参数传递给 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/ ) 中的一个示例。