Это вероятно, потому что вы сделали migration
ранее на model
без поля answer_image
. Поэтому, если вы не укажете атрибут default
или не сделаете его null
и blank
, django предупредит вас о предоставлении значения по умолчанию, потому что the database needs something to populate existing row
, если были вставлены строки, django захочет что-то заполнить эти строки в этом поле не являются null
и не могут быть null
или blank
, даже если таблица пуста, django все равно предупредит вас.
Также сделайте следующее:
Первый вариант
Следуйте инструкциям, которые django печатает на консоли, выберите опцию 1 и укажите значение по умолчанию для заполнения существующих строк
Редактировать: значение не может быть случайным. Но с типом данных images
, указанным в поле answer_image
, поэтому вы вводите foreign_key
, соответствующий объекту / строке images
, поскольку django добавляет поле id
ко всем моделям.
или
Второй вариант
Добавьте следующие атрибуты в ваше поле answer_image
как следующие:
answer = models.ForeignKey(images, null=True, blank=True, on_delete=models.SET_NULL)
Затем примените миграцию (я предложил второй вариант, потому что я предполагаю, что вам не нужен сценарий, в котором строка удаляется в images
таблице cascading
всех соответствующих строк в таблице answer
, поэтому в этом случае удаление установит поле answer_image
null
)