0

尝试使用 Django{%url %}模板标签并不断失败。视图在 sitename/transfers/views.py 中定义(其中 transfer 是 django 应用程序名称):

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']})

(是的,我知道这段代码有点奇怪。努力使它更通用,并在这个烦人的问题中陷入困境)

并且 url 映射在 transfer/urls.py

url(r'^description/(?P<description>[\w ]+)/$',
                           'transfers.views.description_ListView',
                           name = 'description_url')

并在标签中: {% url "description_url" "blabla" %} 也尝试过: {% url "transfers.views.Description_ListView" description = "blabla" %}

错误信息:

Exception Type: NoReverseMatch
Exception Value:    
Reverse for '"description_url"' with arguments '(u'blabla',)' and keyword arguments '{}' not found.

或者当我尝试使用as somename语法并像这样调用它时:`{{somename}}。只是默默地失败了,没有产生任何东西。

我还尝试从视图中导入 Description_ListView 并直接使用它,但没有帮助。

此外,根据各种 SO 问题中关于此主题的众多答案的建议,我将视图改为双引号,并恢复为使用 url 名称而不是视图,但都没有帮助。

我很乐意为此提供任何帮助

4

1 回答 1

3

我认为你不需要引号。尝试:

{% url description_url "blabla" %}

请参阅https://docs.djangoproject.com/en/dev/topics/http/urls/#naming-url-patterns

于 2012-05-29T22:38:21.410 回答