您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

错误:“字典更新序列元素#0的长度为1;在Django 1.4上需要2

错误:“字典更新序列元素#0的长度为1;在Django 1.4上需要2

刚遇到这个问题。我不知道是不是碰到了你的代码,但是对我来说,根本原因是因为我忘记name=了url(或path在Django 2.0+中)函数调用的最后一个参数。

例如,以下函数引发问题中的错误

url(r'^foo/(?P<bar>[A-Za-z]+)/$', views.FooBar.as_view(), 'foo')
path('foo/{slug:bar}/', views.FooBar, 'foo')

但是这些实际上有效:

url(r'^foo/(?P<bar>[A-Za-z]+)/$', views.FooBar.as_view(), name='foo')
path('foo/{slug:bar}/', views.FooBar, name='foo')

回溯之所以无济于事,是因为Django在内部希望将给定的位置参数解析为关键字 arguments kwargs,并且由于字符串是可迭代的,因此非典型代码路径开始展开。始终name=在你的网址上使用!

Go 2022/1/1 18:22:26 有318人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶