Рефакторинг: как удалить модель?
У меня есть модель, которая вызывает слишком много сложностей, поэтому я хочу отказаться от нее и перейти к более простому способу ведения дел. Однако я не хочу сразу же удалять данные из этой таблицы базы данных.
class PRSblock( models.Model):
PRS = models.ForeignKey( 'jobs.PRS2', models.CASCADE, related_name='prs_blocks')
# no other relational fields
Итак, сначала переместите связанное имя prs_blocks
в obsolete_prs_blocks
, а затем в модели PRS
добавьте @property
prs_blocks
, который будет assert
что он никогда не вызывается (чтобы поймать любые части кода, которые я не смог удалить)
Во-вторых, переименуйте модель PRSblock
в obsolete_PRSblock
. IIRC Django makemigrations спросит, переименовал ли я ее, и если я отвечу "да", он сохранит таблицу базы данных.
Звучит ли это разумно или есть какие-то проблемы, о которых я не подумал?