【发布时间】:2021-07-07 08:10:23
【问题描述】:
我有大约 10 多个模型,我将展示其中的 3 个。其中名称为motors、drum、slide。现在在这三个模型中,一个字段是相同的,即名称code。
试图解释:
models.py
class Motors(models.Model):
.
.
code = models.CharField(max_length=10)
.
.
.
def __str__(self):
return str(self.id)
class Drum(models.Model):
.
.
code = models.CharField(max_length=10)
.
.
.
def __str__(self):
return str(self.id)
class Sliders(models.Model):
.
.
code = models.CharField(max_length=10)
.
.
.
def __str__(self):
return str(self.id)
现在在上述模型中,它们与code 具有相同的字段。在code 中,它们具有相同的名称,例如:在一个型号中,代码是DD1, DD2, DD3,另一个型号代码是DD1, DD2, DD3。
现在在上面,代码是匹配的。因此,如果用户选择一台电机,CodeDD1。然后用代码DD1 显示相关的2 个型号,或者如果用户选择一个带有代码DD1 的鼓。然后在Django中显示相关的两个模型项
我使用了添加到购物车功能,代码放在这里。
views.py
def addProductMotor(request):
user = request.user
motor_id = request.GET.get('motor_id')
motor_cart = Motor.objects.get(id=motor_id)
Cart(user=user, motor=motor_cart).save()
return redirect('main:index')
在上面,我在购物车中添加了一个产品项目,然后显示相关项目。怎么可能?
我怎样才能得到这两个相关的模型项?
【问题讨论】:
-
根据您提供的信息。看起来他们没有关系。必须有 onetoone、manytoone 或 manytomany 字段
-
我在
drum模型上使用了这个。motors = models.ManyToManyField(Motor)。现在,转发怎么办?
标签: python django django-models django-views django-templates