我无法理解,以显示特定视图显示视图,与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数据中,但仍然存在相同的问题,即构建模型数据的最佳做法是什么。 –