Я изменил multihost.py промежуточное программное обеспечение, которое я нашел по http://effbot.org/zone/django-multihost.htm для установки настроек. SITE_ID динамично, но имеют некоторые опасения, что я, возможно, просто оставил резервирование.
Большинством примеров я нашел для нескольких доменный хостинг, была установка с несколькими settings.py файлами hardcoded к их соответствующему SITE_IDs.
Я создал фиксацию с фатальным дефектом здесь? Будет изменение этого значения, динамично кусают меня в **.
from django.conf import settings
from django.contrib.sites.models import Site
class MultiHostMiddleware:
def process_request(self, request):
try:
host_raw = request.META["HTTP_HOST"]
colon = host_raw.find(':')
if colon > -1:
host = host_raw[0:colon]
else:
host = host_raw
s = Site.objects.get(domain=host)
if s:
settings.SITE_ID = s.id
except KeyError:
pass # use default urlconf (settings.ROOT_URLCONF)
Для любопытного это в порядке до сих пор, но не противостояло фактическому трафику.