【问题标题】:Populate ModelChoiceField by comparing two or more tables通过比较两个或多个表来填充 ModelChoiceField
【发布时间】:2010-12-13 19:36:25
【问题描述】:

我有一种独特的情况....我想填充基于几个表的 ModelChoiceField,原因是我希望搜索只包含活动记录。其中一种模型的示例如下:

class ExteriorColour(models.Model):
   exterior_color = models.CharField(max_length=7, blank=False)
   def __unicode__(self):
     return self.exterior_colour

class Vehicle(models.Model):
   stock_number = models.CharField(max_length=6, blank=False)
   exterior_colour = models.ForeignKey(ExteriorColour)
   def __unicode__(self):
      return self.stock_number

从上面的模型文件中,我希望外观颜色的表单字段仅包含车辆表和外观颜色表中的那些外观颜色。我应该如何指定?

【问题讨论】:

    标签: django forms


    【解决方案1】:
    ExteriorColour.objects.filter(vehicle__isnull=False)
    

    我认为应该这样做。

    【讨论】:

    • 啊……这很好……一个简单的问题……我如何指定条目只出现一次?目前,如果黑色出现在三个记录中,我将获得三个条目。
    • 试试:ExteriorColour.objects.filter(vehicle__isnull=False).distinct()
    • thnx...它就像一个魅力。正在搜索 .distinct()
    猜你喜欢
    • 1970-01-01
    • 2014-11-09
    • 1970-01-01
    • 1970-01-01
    • 2017-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多