渲染时捕获异常:
与参数 '()' 和 'products.views.'filter_by_led' 相反
未找到关键字参数“{}”。
我能够成功导入products.views.filter_by_led
从 shell 中运行并且它有效,因此路径应该是正确的。
这是 urls.py:
(r'^led-tv/$', filter_by_led ),
这是生成错误的地方:
href="{% url products.views.filter_by_led %}">
我无法理解,因为这在同一个文件中工作得很好:
{% url products.views.lcd_screen_size screen_size=50 %}
这是函数定义:
def filter_by_led(request):
我不明白为什么 Django 会认为该函数无法找到该函数的反向。
我把所有的都删除了*.pyc
文件并重新启动 Apache。
我究竟做错了什么?
我能立即想到三件事:
- 刚用过命名网址 https://docs.djangoproject.com/en/2.2/topics/http/urls/#naming-url-patterns,无论如何它更加健壮和可维护
-
尝试使用django.core.urlresolvers.reverse
在命令行中获得(可能)更好的错误
>>> from django.core.urlresolvers import reverse
>>> reverse('products.views.filter_by_led')
检查是否有多个 url 指向该视图
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)