There are three ways one can approach moving models to a new app. I opted for the django way where one create the migrations, but use the SeparateDatabaseAndState operation to update django's state by running the original migrations only on the state. The DB operations to delete the tables from the experiments app and create them in the participants app should be overwritten to rather just rename the table.
Initial testing showed that nothing breaks, but this doesn't mean it's working as expected. I still have to ensure I know exactly what happens to the indexes and unique constraints that would have been removed. My code just leaves them alone, which I suspect is wrong. Maybe we should rename them as well. For now, I'm parking this change until we decide to tackle it.
There are three ways one can approach moving models to a new app. I opted for the django way where one create the migrations, but use the SeparateDatabaseAndState operation to update django's state by running the original migrations only on the state. The DB operations to delete the tables from the
experiments
app and create them in theparticipants
app should be overwritten to rather just rename the table.Initial testing showed that nothing breaks, but this doesn't mean it's working as expected. I still have to ensure I know exactly what happens to the indexes and unique constraints that would have been removed. My code just leaves them alone, which I suspect is wrong. Maybe we should rename them as well. For now, I'm parking this change until we decide to tackle it.