我無法理解,以顯示特定視圖顯示視圖,與Django的
最好的方法有兩個過濾模型相關鍵我有兩個模型是這樣的:
// models.py
class CarDealer(model.Models):
name = model.TextField()
slug = model.SlugField()
class Car(model.Models):
name = model.TextField()
color = model.TextField()
dealer = model.ForeignKey('CarDealer', related_name'cars')
和網址我試圖構建的是:
// url.py
url(regex=r'^(?P<car_dealer_slug>[^/]*)/(?P<car_color_one>[^/]*)/(?P<car_color_two>[^/]*)/$',
view=views.DealerCarColors.as_view(),
name='dealer_car_colors')
所以URL可以是/經銷商/藍/綠,我想顯示的經銷商名單,藍色汽車的清單和綠色汽車他們有,或列表沒有車的秒。
我想視圖中顯示的表:
|dealer | color 1| color 2|
---------------------------
|dealer1| car A | car Z |
| | car B | car X |
| | car C | |
---------------------------
|dealer2| | |
---------------------------
我想了解如何使用基於類的意見,允許CarDealers的尋呼做到這一點,但仍然能夠顯示兩個相關對象的過濾列表。
我知道這是可能的幾種方式,但什麼是最正確的方式?即保留view.py文件中的所有邏輯,而不是使用過濾器。
避免產生這種複雜的URL,過濾器/搜索參數而應是在獲取數據,如顏色=綠色和顏色? =藍色。對於我來說,顯示多個經銷商的汽車是沒有意義的,因爲/ car_dealer_slug /應該對於只有一個經銷商是唯一的。 –
對不起,我還不能編輯我的帖子,但我想在URL中刪除經銷商。 –
雖然參數在GET數據中,但仍然存在相同的問題,即構建模型數據的最佳做法是什麼。 –