从这里继续提问。根据@dannyroa 修复模板后 - 从模板名称中删除引号我仍然收到 NoReverseMatch 错误:
NoReverseMatch at /transfers/41/
Reverse for 'description_url' with arguments '(u'\u05ea\u05e7\u05e6\u05d9\u05d1 \u05d4\u05e9\u05db\u05e8 - \u05d1\u05d9\u05ea \u05d4\u05e0\u05e9\u05d9\u05d0',)' and keyword arguments '{}' not found.
Request Method: GET
Request URL: http://127.0.0.1:8000/transfers/41/
Django Version: 1.4
Exception Type: NoReverseMatch
Exception Value:
Reverse for 'description_url' with arguments '(u'\u05ea\u05e7\u05e6\u05d9\u05d1 \u05d4\u05e9\u05db\u05e8 - \u05d1\u05d9\u05ea \u05d4\u05e0\u05e9\u05d9\u05d0',)' and keyword arguments '{}' not found.
现在的模板:
<a href='{% url description_url transfer.description %}'>{{transfer.description}}</a>
网址配置:
url(r'^description/(?P<description>[\w ]+)/$',
'transfers.views.description_ListView',
name = 'description_url')
风景:
def description_ListView(requesst,**kwargs):
template_name = 'transfers/description.html'
o = get_list_or_404(Transfer, description =kwargs['description'])
#print ('o:',o)
context_object_name = "transfer_name_list"
return render_to_response(template_name,{context_object_name:o,'description':kwargs['description']})
这个问题真的开始让我失望了。我知道我可以在传输模型(可能使用@permalink)上编写一个特定的方法,为每个视图返回正确的 url。但这是很多工作,而且这样做肯定令人沮丧,只是因为我在使用 {%url %} 模板标签时遭遇了惨痛的失败
谢谢您的帮助