Как в form подставить нужное значение для model django

Есть форма, в которой, при записи модели, надо подставлять нужную категорию. как это сделать?

Есть форма, которая имеет только поле device

forms.py

class FastForm(forms.ModelForm):
    class Meta:
        model = Orders
        fields = ['device']

Есть модель, в которой есть category, которая имеет ForeignKey и две записи с pk=1 и pk=2

models.py

class Orders(models.Model):
    device = models.CharField(max_length=150)
    category = models.ForeignKey('Category', default=1, on_delete=models.PROTECT)

class Category(models.Model):
    category = models.CharField(max_length=150, db_index=True)

вопрос: как в forms.py в классе FastForm, указывать, что надо именно записывать в поле category значение pk=2, а не default?


Ответы (1 шт):

Автор решения: Andrew Holovko

вопрос: как в forms.py в классе FastForm, указывать, что надо именно записывать в поле category значение pk=2, а не default?

Добавьте в форму поле category.

fields = ['device', 'category']

Если хотите, чтобы в поле выводился id, в модели перегрузите метод __str__.

→ Ссылка