Используя South/Django, я столкнулся с проблемой, когда пытаюсь добавить столбцы UNIQUE
и NOT NULL
для модели с существующими строками в базе данных. Юг предлагает мне указать значение по умолчанию для столбца, так как это NOT NULL
. Но поскольку у него также есть ограничение UNIQUE
, я не могу добавить значение по умолчанию в поле в models.py и не могу указать одноразовое значение, потому что оно будет одинаковым для всех строк.
Единственный способ обойти это — сначала создать столбец с нулевым значением, применить миграцию, запустить скрипт для заполнения существующих строк уникальными значениями в этом столбце, а затем добавить еще одну миграцию, чтобы добавить ограничение UNIQUE
к этому столбец.
Но есть ли лучший способ сделать то же самое?