У меня есть модель с некоторыми полями и пользователя как ForeignKeyДжанго modelforms и поля
class Customer(models.Model):
#fields
salesman = models.ForeignKey(User, blank=True, null=True)
и типовую форму
class CustomerForm(ModelForm):
class Meta:
model = Customer
Я хочу, чтобы моя форма для проверки, если продавец также введен, но а не на уровне базы данных. Если я добавлю поле продавца
class CustomerForm(ModelForm):
salesman = forms.ModelChoiceField(required=True, queryset=User.objects.all(), widget=Select(attrs{"class":"form-control"})
class Meta:
model = Customer
будет ли это полемизировать модельное поле? Должен ли я переопределить метод сохранения, чтобы сохранить значение вновь созданного поля для моделей по умолчанию? Или форма django видит одно и то же имя поля и использует его правильно?
Да, она перекрывает его. – arocks
Так что я должен переопределить метод сохранения тоже? – Apostolos
Прочтите поле «Примечание» в этом разделе https://docs.djangoproject.com/en/dev/topics/forms/modelforms/#overriding-the-default-fields – arocks