CakePHP:保存翻译将翻译的字段保存在原始表中,为什么?

时间:2009-10-14 16:25:02

标签: cakephp translation multilingual

我正在使用翻译行为。

这是一个场景:我用模型'内容'保存翻译 语言日语。

然后我检查数据库中相应的表'contents',我看到我的'title'和'body'字段被更改为已翻译的输入(日语)。我的英语(和日语)内容保存在content_i18ns表中。

我的观点中的所有内容仍然是英文,所以一切都很好。我只是 关注为什么我的'内容'表用翻译的输入更新。 可怕的是,它可能在将来导致错误。

这可以吗?我做错了什么或者这是CakePHP的正常行为吗?

提前致谢!

2 个答案:

答案 0 :(得分:1)

从“内容”表中删除字段'title'和'body':)

答案 1 :(得分:1)

这很正常。

您保存的所有内容都将以您当前在页面上使用的语言保存在内容表中。 +它将保存在i18n表中。

它不会导致任何问题,您不会丢失数据,如果您根据(烹饪)书使用翻译行为,那么您的页面将以正确的语言提取(因为结果将被取出表内容和i18n(或您定义的自定义表)的连接以及数据字段将根据您设置的语言进行更新。