У меня есть своеобразная ситуация .... Я хочу заполнить ModelChoiceField на основе нескольких таблиц, потому что я хочу иметь поиск, содержащий только активные записи. Примером одной из моделей выглядит следующим образом:Заполнение 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
Из приведенного выше файла модели, я хотел бы иметь поле формы для внешнего цвета, имеющего только те внешние цвета, которые и в таблице Vehicle и экстерьера Цветной стол. Как мне это указать?
Ahhh ... это прекрасно работает .... один быстрый вопрос ... как указать, что записи появляются только один раз? В настоящее время, если Black появится в трех отчетах, я получу три записи. – 2009-11-06 12:54:15
Попробуйте: ExteriorColour.objects.filter (vehicle__isnull = False) .distinct() –
thnx ... он работал как шарм. Был поиск .distinct() – 2009-11-06 13:29:08