处理symfony2 multi-tenant architecture项目(具有专用可自定义前端的多个用户),其中有多个客户端在单独的文件夹中具有单独的资产,子域用于区分客户端和相应的数据和资产是根据客户端加载,这是设置我将如何为每个客户端使用不同的语言,例如:客户端1希望他的网站使用英语和西班牙语,客户端2希望使用英语和法语。
在App>下资源>翻译我可以有不同的messages.yml,但我将如何区分它们(客户端1' message.en.yml和客户端2' message.en.yml)以及如何动态加载它
答案 0 :(得分:0)
如果我理解正确,您希望让用户考虑显示您网站的语言,对吗?
如果,是的,Symfony为i18n提供强大的机制:
在configuration.yml
添加:
framework:
translator: { fallback: "%locale%" }
default_locale: "%locale%"
然后在routing.yml
导入您的路线:
main:
resource: "@MyAwesomeBundle/Resources/config/routing.yml"
prefix: /{_locale}
requirements:
_locale: |uk|en
defaults: { _locale: en }
您可以获得更多信息here。如果您想将翻译存储在数据库中,您应该查看DoctrineExtensionsBundle。希望它会有所帮助。