有没有办法用django和子域创建多语言网站?
我想有这个:
en.mysite.com - >网站用英语 it.mysite.com - >意大利语网站
我听说过localeurl应用程序,但它主要用于像/en/index.html或/it/index.html这样的网址路径。
答案 0 :(得分:3)
您可以使用domain framework获取当前域名:
from django.contrib.sites.models import Site
domain = Site.objects.get_current().domain
language = domain.split('.')[0]
获取
domain = request.META['HTTP_HOST']
language = domain.split('.')[0]
然后activate语言:
from django.utils import translation
translation.activate(language)
您可以使用此代码编写自己的中间件。