[英]Undersanding Django's get_absolute_url using reverse
我正在嘗試編寫一個應用程序,該應用程序除其他外將生成可供收養的狗的列表。
當我嘗試生成該列表時,出現以下錯誤:
Reverse for 'dog' with arguments '()' and keyword arguments '{'dog_id': 3, 'name': 'Rex'}' not found. 1 pattern(s) tried: ['ForeverHomes/Dog/(?P<dog_id>\\d+)/(P?<name>[A-Za-z ]+)']
當Django嘗試通過以下方法獲取絕對URL時,這正在提高:
def get_absolute_url(self):
return reverse('ForeverHomes:dog',
kwargs={"dog_id": self.dog_id,
"name": self.name},
current_app="ForeverHomes")
它試圖匹配的模式是正確的模式,但是我不明白的是我的Dog
對象是如何匹配正則表達式的。 我的Dog
對象都有一個dog_id
和一個name
,如果那很重要的話。
我不知道“我的Dog對象如何與正則表達式匹配”是什么意思。
你的問題很簡單,你有一個畸形的正則表達式:在?
和P
在name
組中是錯誤的選擇。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.