在Django中,我要通過使用如所描述的here get_absolute_url方法來顯示模型對象的詳細視圖。Django的:get_absolute_url不工作
對每一個細節的URL結構是這樣的......
url.com/company/(?P<company_id>[0-9]+)/people/(?P<slug>[0-9]+)/$
哪裏... /人/是列表視圖和... /人/蛞蝓/爲每個細節反對
因爲我把href='{{ people.get_absolute_url }}'
在我的模板,它返回NoReverseMatch錯誤,像這樣
NoReverseMatch at /company/google/people/
。
如果使用的是「COMPANY_ID」 kwarg在URL中是否有人知道引起渲染與get_absolute_url HREF頁面爲「塞」 kwarg問題?
我與工作的kwarg變量之前硬編碼的URL之前很多次做;如 '公司/人/(ΔP<塞> [0-9] +)/ $' - 請注意,只有一個關鍵詞
完全錯誤:
Reverse for 'people-detail' with arguments '()' and keyword arguments '{u'slug': u'798224891221678'}' not found. 1 pattern(s) tried: ['company/(?P< company_id >[0-9]+)/people/(?P< slug >[0-9]+)/$']
get_absolute_url方法:
def get_absolute_url(self):
return reverse('people-detail', kwargs={'slug': self.slug})
請出示您的模型和'get_absolute_url'方法。錯誤消息顯示您未在關鍵字參數中包含'company_id'。 – Alasdair
@Alasdair更新:) - 該方法是否應該包括公司的關鍵字參數?我已經爲公司創造了自己在「COMPANY_ID」 – jayt
的'get_absolute_url'爲'Company'模型和相關的URL模式方法路過這裏都沒有效果get_absolute_url。你只需要確保當你調用'reverse'時,你包含了你正在反轉的url模式的所有args/kwargs。 – Alasdair