Как изменить первичный ключ в модели django так, чтобы это затронуло и другие зависимые модели, а изменения были синхронизированы с базой данных postgresql
У меня есть проект django с таблицей базы данных, которая уже содержит данные. Модели:
class Foo_A(models.Model):
field1_pk = models.CharField(max_length=50)
field2
.
.
fieldN_newpk = model.CharField(max_length=50)
Данные в field1_pk и fieldN_newpk абсолютно одинаковы.
Допустим, у меня есть другие модели, которые ссылаются на fieldN_newpk как на внешний ключ.
- Я хотел бы переименовать
fieldN_newpkв этой моделиFoo_A, не теряя при этом никаких данных. Это изменение должно быть отражено и в других моих зависимых моделях. - Я хочу изменить первичный ключ с
field1_pkнаfieldN_newpk - Я хочу, чтобы эти изменения были отражены и в моей базе данных postgresql .
Я видел другие ответы, связанные с переименованием модели
Также есть ли безопасный способ/безопасный режим, чтобы опробовать эти изменения/миграции перед тем, как приступить к работе с оригинальной кодовой базой