| Build it in parallel with your current codebase. If you're not doing so already, create a staging database you can use for developing this. That way if something goes berserk production data stays safe. Get a jumpstart by using Django and creating models that match your database via inspectdb [1]. Most important thing is getting the data to fit and relate as you'd expect. Some recommended plugins are django-debug-toolbar (https://github.com/jazzband/django-debug-toolbar) and django-extensions (https://github.com/django-extensions/django-extensions). Then for Social API logins use https://python-social-auth-docs.readthedocs.io. For Social API's themselves there are python wrappers, like https://github.com/mobolic/facebook-sdk. In the worst case, you'll be querying API's directly with requests (http://docs.python-requests.org). Next, you begin to build views (and their templates) around the models you've created. You're going to want them to run at a parity with what you have in PHP. Use urls.py regular expressions to match your URL's too. This is how you mitigate the risk of doing a "migration". And also a great way to get some experience under the belt while you do it. You should be able to get your site working off a staging database in a read-only way when you do this. Keep the PHP site in production until your ready to switch. If you use JSON/REST, also check out Django REST Framework. http://www.django-rest-framework.org/ I'm going to be making a detailed blog post on django in a few days as well. [1] https://docs.djangoproject.com/en/1.11/howto/legacy-database... |