2012-03-25 95 views
3

我閱讀了很多文檔,嘗試了所有內容,但仍無法理解爲什麼我的模板爲參數'(1,)'和關鍵字參數'{}'返回「發現錯誤。請參閱錯誤轉儲這裏:http://dpaste.com/721187/無法在管理員更改中反轉匹配網址

我change_form.html模板中使用的標籤是{%URL pdfview 1%}

類FVatAdmin(admin.ModelAdmin)具有get_urls方法,它看起來是這樣的:

def get_urls(self): 
    urls = super(FVatAdmin, self).get_urls() 
    my_urls = patterns('', 
     url(r'^view/(?P<id>\d+)', self.admin_site.admin_view(self.pdf_view), name="pdfview"), 
     url(r'^js/calculate', self.admin_site.admin_view(self.calculate), name="calc"), 
     ) 
    return my_urls + urls 

上面定義的url和pdfview工作得很好,但有些不能通過模板中的{%url pdfview 1%}並通過反轉('pdfview',args = {1})在視圖中解析或通過外殼。

我只是不明白我做錯了什麼。我是Django的新手... H E L P :)

回答

4

把URL名稱。

{% url "admin:pdfview" 1 %} 

UPDATE:這僅適用於Django的1.3/1.4,如果:

{% load url from future %} 

使用。

+0

他在詢問關於撤銷管理網址的問題 - 此回覆對此沒有幫助。 – shacker 2012-03-25 19:23:03

+0

是的,它應該是管理員:pdfview – bmihelac 2012-03-25 19:46:32

+0

啊 - 你應該編輯你的答案呢! – shacker 2012-03-25 20:12:49

1

Django admin urls是命名空間,以免與其他url衝突。

嘗試做以下{%URL管理:pdfview 1%}

有關詳細信息,請參閱本:在報價

https://docs.djangoproject.com/en/1.4/topics/http/urls/#topics-http-reversing-url-namespaces

+1

我也試過這個,我收到一個**無法解析其餘部分:':pdfview'from'admin:pdfview'**錯誤,tracback在這裏http://dpaste.com/721417/這裏有點問題。也許我應該在這裏發佈我的腳本的其他部分,以確定問題在哪裏? – Timus83 2012-03-26 06:56:12

+0

對不起,我的回答出錯了,現在就修好了。 {%** url ** admin:pdfview 1%}是正確的做法。 – vkryachko 2012-03-30 04:55:08