Django Admin: Модель Foreignkey имеет null & blank = True, но использование formfield_for_foreignkey в Admin делает его необходимым
В моей модели есть ForeignKey с null=True / blank=True, но когда я пытаюсь изменить объект в Django Admin, я использую
def formfield_for_foreignkey(self, db_field, request, **kwargs):
if db_field.name == 'parent_locale':
return ParentLocaleChoiceField(queryset=models.Locale.objects.all().order_by('display'))
return super().formfield_for_foreignkey(db_field, request, **kwargs)
, чтобы изменить отображение данных. Но теперь при отправке выдает ошибку о том, что поле является обязательным. Как сделать это поле необязательным при использовании formfield_for_foreignkey для изменения отображения поля выбора?
Добавьте required=False для поля ParentLocaleChoiceField
def formfield_for_foreignkey(self, db_field, request, **kwargs):
if db_field.name == 'parent_locale':
return ParentLocaleChoiceField(queryset=models.Locale.objects.all().order_by('display'), required=False)
return super().formfield_for_foreignkey(db_field, request, **kwargs)