Я искал то же самое в сети и получил много ответов, но кое-как понять, как работать с любым из них.
Таблица:
- Отчет: reportType (внешний ключ из ReportCategory), имя, описание
- Категория отчета: название, описание
forms.py
class ReportForm_insert(forms.ModelForm):
class Meta:
model=Report
invent = ReportCategory.objects.all()
print invent
reportType_id = forms.ModelMultipleChoiceField(queryset = invent)
fields =('name','description',)
model.py
class ReportCategory(models.Model):
name = models.CharField(max_length=20)
description = models.CharField(max_length=20)
def __unicode__(self):
return self.name
class Report(models.Model):
reportType = models.ForeignKey(ReportCategory)
name = models.CharField(max_length=200)
description = models.CharField(max_length=300)
def __unicode__(self):
return self.name
Теперь внутри мета-класса я пытаюсь сделать две вещи:
Во-первых, заполните раскрывающийся список Тип отчета значением из
столбец «имя» таблицы ReportCategory.
Во-вторых, когда все остальные поля в форме заполнены пользователем
и кнопка нажата, данные в полях должны быть сохранены в
таблица отчета с учетом ограничения внешнего ключа
из таблицы ReportCategory.