Django Newbie:“反向找不到” - 代码日志

Django Newbie:“反向找不到”

我有一行Django表单:

{% for aa in my_array %}

这似乎触发了这个错误:

Template error

Caught an exception while rendering:
Reverse for
‘dev_env.profiles.views.viewPlan’ with
arguments ‘(”,)’ and keyword
arguments ‘{}’ not found.

这个错误信息是什么意思?

我怀疑线路是正确的,但错误信息是错误的。或者错误是真实的,但这行是一个红色的鲱鱼。

我应该在寻找什么?

更新:保罗对此进行了排序,如下。

事实上,我有一个{%url viewPlan planId%}几行(所以报告的错误行是错误的),但错误是触发的,因为planId在这种情况下为空。

你有一个名为viewPlan的视图,您可以在模板中执行此操作:

{% url viewPlan %}

或者这样的一个视图:

reverse('viewPlan')

如果你这样做,你没有这样的行:

url(r'^whatever/url/$', 'dev_env.profiles.views.viewPlan', name="viewPlan"),

…在你的url配置我想象这是你得到的错误。或者,更有可能的是,您可能会在viewPlan URL中捕获一个值(可能是id或某些东西),但在反转网址时不会传递参数。所以如果你正在捕获正则表达式中的任何值,像这样:

url(r'^plans/(\d+)$', 'dev_env.profiles.views.viewPlan', name="viewPlan"),

你需要像这样调用它:

{% url viewPlan 15 %}

或者像这样:

reverse('viewPlan', args=[15]);

其中15显然是捕获的价值所期待的。

http://stackoverflow.com/questions/625047/django-newbie-reverse-not-found

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:Django Newbie:“反向找不到”