管理动态语言数据的数据库结构

时间:2012-10-30 08:30:41

标签: multilingual

我认为这个问题有一个标准的解决方案,但我找不到它。

我有一些存储用户数据的表。包含文本数据的列可以转换为不同的语言。

我想我必须创建一个包含“fr”,“en”等语言ID的表,以及另一个PER用户的内容表,用于存储翻译,关联语言和用户内容行的外键表

问题是此解决方案强制为每个用户的内容表添加一个languageTranslation表(因为外键列不能指向不同的表)。

是否有更简单的解决方案?

1 个答案:

答案 0 :(得分:0)

你必须决定什么是可翻译的,什么不可以。

如果您可以决定使用适当语言的字符串替换“key”或“tokens”,将会有所帮助。

它可以帮助您构造schema.table_name.column_name.value形式的键,以便您有一些结构(在某种程度上有点像Windows注册表路径)。

但是,是的,这是很多工作,并没有任何捷径。

-

既然您告诉我们您正在使用Symfony 2,那么以下链接可能会对您有所帮助吗?

http://symfony.com/doc/2.0/book/translation.html

http://api.symfony.com/2.0/Symfony/Component/Translation/Loader/LoaderInterface.html