[Update] A porting guide is now available.
Had a great opportunity to do the Django 1 upgrade for one of my projects during the Django sprint held this week in Tel Aviv university. Couldn’t dream of a better place to do it: with experts & other people doing the same thing.
Main things I had to do:
- Changed the signals code to the new syntax
- See the docs
- Changed the admin & admin docs url mapping
- Changed the models admin metadata to the new syntax & separated it to new admin.py for every app
- This seems at first like a task that would take several days of manual labor. Luckily, a script was written to automatically migrate code, which worked great. I’ve applied it to all of our apps (about 20 in this project) manually (too bad it wasn’t extended to migrate full project).
- Besides running the script, I had to remove the existing admin metadata code from the models.py files.
The sprint BTW was quite fun, though I didn’t get to help with Django bugs, just do the migration & testing. Meir Kriheli gave a great Django tutorial, & I gave a small presentation about some of Django projects I’ve done. I hope it’ll contribute to the local Django community to raise its head over the boring Java/.Net/PHP water.