我正在CakePHP 1.3中建立一个网站。我的要求是建立一个支持阿拉伯语和英语的网站。我希望如果用户输入阿拉伯语信息,那么当英语用户看到相同的信息时,它应该是英语,反之亦然。
至于使用po文件本地化标签。它很直接。 但对于数据库我使用Cakephp的内置翻译行为。但它不会翻译任何内容,并使用当前正在使用的语言环境创建另一个数据副本。
请帮助我向我移动的方向。
我想知道这种情况应该遵循的最佳做法。 可能正在翻译db值不是最佳解决方案,应该保存值,无论它们来自何种语言。
任何帮助和建议都将受到高度赞赏。
答案 0 :(得分:1)
实际上,CakePHP无法自动转换输入的数据。
翻译行为允许您以多种语言输入相同的内容,然后根据您当前在配置中设置的语言从数据库中检索相应的语言。它实际上并没有为你翻译任何东西。
理论上,您可以向Model :: beforeSave()回调添加一个函数,该函数将阿拉伯文本提交给Google Translate等服务,然后将阿拉伯语和英语版本保存到相应的表中,但结果不会一定很好。正如@deceze在对你的问题的评论中所说,机器翻译是一个难题。