How to set multiple settings.py for sites framewor

2019-09-05 02:56发布

Am trying to set up multiple website with same base. While browsing, came to know Django has Sites framework which I could use.

I didnt get how to set multiple settings.py file with site id. Any ideas anyone?

Thanks in advance :)

2条回答
戒情不戒烟
2楼-- · 2019-09-05 03:15

you can have multiple setting file for example develop.py and production.py steps 1. create a settings folder inside the project 2. Add all of the settings file to that folder 3 while running server

./manage.py runserver --settings=project_name.settings.required_settingfile

eg: ./manage.py runserver --settings=myproject.settings.develop

查看更多
男人必须洒脱
3楼-- · 2019-09-05 03:18

To serve multiple sites from the same Django instance you do not need multilple settings.py files.

A simple method is to omit the SITE_ID setting from the Sites framework. Then include the Sites framework middleware:

'django.contrib.sites.middleware.CurrentSiteMiddleware'

This automatically passes a request object to Site.objects.get_current() on every request. It also allows your Django application to detect the current site via request.site.

You would need to make sure to setup multilple virtual hosts using your NGINX or apache instance to route traffic from each site to your server.

查看更多
登录 后发表回答