Я пытаюсь использовать ModelForm для добавления моих данных. Он работает хорошо, за исключением того, что раскрывающийся список ForeignKey показывает все значения, и я хочу, чтобы он отображал значения, которые уместны для зарегистрированного пользователя.Как фильтровать значения в форме Django с помощью ModelForm?
Вот моя модель ExcludedDate, запись я хочу добавить:
class ExcludedDate(models.Model):
date = models.DateTimeField()
reason = models.CharField(max_length=50)
user = models.ForeignKey(User)
category = models.ForeignKey(Category)
recurring = models.ForeignKey(RecurringExclusion)
def __unicode__(self):
return self.reason
Вот модель для той категории, которая является таблица, содержащая отношения, которые я хотел бы ограничить пользователем:
class Category(models.Model):
name = models.CharField(max_length=50)
user = models.ForeignKey(User, unique=False)
def __unicode__(self):
return self.name
И, наконец, код формы:
class ExcludedDateForm(ModelForm):
class Meta:
model = models.ExcludedDate
exclude = ('user', 'recurring',)
Как получить форму для отображения на Подмножество категорий, где category.user равно зарегистрированному пользователю?
Это работало «легко, как пирог!». Я ценю не только ваш ответ, но и полноту вашего ответа. – malandro95
Рад помочь ... –
Итак ... пока форма теперь выглядит великолепно, изменение нарушило представление, которое добавляет данные. Есть идеи? (Код ниже) – malandro95