我想这个问题有一个标准的解决方案,但我找不到它..管理动态语言数据的数据库结构
我有一些表存储用户数据。包含文本数据的列可以转换为不同的语言。
我想我必须创建一个表,其中包含像“fr”,“en”这样的语言ID和另一个PER用户的内容表,它将翻译,关联语言和外键存储到用户的行中内容表。
问题是,此解决方案强制为每个用户的内容表添加一个languageTranslation表(因为外键列不能指向不同的表)。
有没有更简单的解决方案?
我想这个问题有一个标准的解决方案,但我找不到它..管理动态语言数据的数据库结构
我有一些表存储用户数据。包含文本数据的列可以转换为不同的语言。
我想我必须创建一个表,其中包含像“fr”,“en”这样的语言ID和另一个PER用户的内容表,它将翻译,关联语言和外键存储到用户的行中内容表。
问题是,此解决方案强制为每个用户的内容表添加一个languageTranslation表(因为外键列不能指向不同的表)。
有没有更简单的解决方案?
你必须决定什么是可翻译的,哪些不可翻译。
如果您可以决定将用相应语言的字符串替换的“键”或“标记”,这将有所帮助。
它可以帮助您构建形式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
描述你的软件栈。也许有一些现有的库可以缓解这种痛苦。 –
这是一个Web应用程序,它将在PHP/MYSQL中使用Symfony 2 – Leto