几乎在每个多语言项目中,我都在改变翻译逻辑。对于类似博客的项目,我在数据库中创建新列,如title_en, title_ru ... and content_en, content_ru...
所以基本上如果我们有blogpost的id,我们可以访问所有语言。它运作良好,但我知道基于列的翻译不灵活,也不是好的方向。所以我在思考基于行的翻译,其中每个博客帖子的行都有如下列:id, title, content, locale
。
但是这种方式也有问题,其中一个对我来说,如何在blogpost和它的翻译之间建立联系?
我的意思是,如果你用英语打开blogpost并将语言改为俄语,如何知道打开哪个博文?
为所有页面翻译使用1个令牌的一种方法。是否可以为页面的所有翻译使用1个令牌?我的意思是
example.com/en/mypage
example.com/ru/mypage
example.com/de/mypage
请与我分享您的经验。谢谢
答案 0 :(得分:1)
Drupal做得非常好。您有一个名为tid(翻译ID)的列。您设置主语言,然后将tid指向主语言列。
所以你的表就像这样(ish)
然后你可以使用tid和lang来查找所有内容,但仍然有每行条目。
example.com/en/mypage 从id = 1
的页面中选择*exmaple.com/fr/mypage 从tid = 1和lang =" fr"
的页面中选择*