Мое приложение gae обслуживает несколько доменов по условиям if..else..
, а не по пространствам имен.Я вижу, что кто-то другой решил эту проблему с помощью пространств имен
"У меня есть одно приложение с несколькими определенными пространствами имен.
Я хотел бы настроить несколько доменов
a.com b.com c.com
и приложение должно определить домен и записать данные домена в соответствующее пространство имен. "
Я не знаю, как это сделатьс пространствами имен, и я хочу, чтобы лучший способ добавить домен в приложение для настройки, такие как содержимое и языки.Например, отправляя электронное письмо через форму, я использую только условие вместо пространства имен.
class FileUploadHandler(blobstore_handlers.BlobstoreUploadHandler):
def post(self):
adminemail = 'admin@domain1.com' if gethost() is 'domain1' else 'admin@domain2.com'
message = mail.EmailMessage(sender=admin_email, subject=self.request.POST.get('subject'))
message.body = ...
message.to='info@domain...
message.send()
self.redirect('/customer_service.htm')
Я использую один и тот же обходной путь для запросов, локализации и, в некоторых случаях, даже для отображения какого шаблона, в то время как я должен иметь возможность сделать все домены основанными на одних и тех же шаблонах и отличаться только содержимым, чтобыМое приложение не кодирует домены и другие параметры, которые легко добавить и изменить.
Являются ли пространства имен отличной идеей в этом случае?До сих пор способ решения проблемы с разными доменами - это переменная для сущности, из каких доменов она вышла
if util.get_host().find('my-dot-com') > 0:
url = 'www.my-dot-com.com'
У меня есть функция, которая определяет, что я имею в виду, но это может спутать www.domain.com сdomain.com или у вас есть проблемы с поддоменами
def get_host():
return os.environ.get("HTTP_HOST", os.environ["SERVER_NAME"])
Я был бы рад узнать любую идею, если у вас есть, или если я ошибаюсь и не должен использовать пространства имен в этом случае.
Спасибо