[Fixed]-Django South migration to different databases

10👍

“Does South honor database routers?” No, it does not.

The problem is that Django’s DB router routes queries to databases based on Apps/Models, whereas south is based on Tables. South really doesn’t have much idea which model a table corresponds to (esp in the history). Andrew Godwin is currently working on a contrib module to django that will replace south and fix a lot of these problems, but right now you have to do a lot of this work manually using hacky methods (--database, .using()).

I’d recomend for the sake of automation, having all tables exist in all databases and running all the migrations against all of those databases too. Just to make sure that all the constraints work consistently across all of the databases.

👤Thomas

Leave a comment