使用i18n数据库表(cakePHP)从两个表进行翻译

使用i18n数据库表(cakePHP)从两个表进行翻译,cakephp,internationalization,Cakephp,Internationalization,我有四张桌子: 画廊类别表: id(int); 头衔(varchar) 画廊图片表: id(int); 头衔(varchar) 图库\u类别\u图库\u图片表连接到上面的表格: 画廊(分类)id(int);; 画廊图片id(内部) 和i18n表: id(int) 语言环境(varchar) 模型(varchar) 外键(int) 字段(varchar) 内容(文本) 我试过: $this->GalleryCategory->bindModel(array( '

我有四张桌子:

画廊类别表: id(int); 头衔(varchar)

画廊图片表: id(int); 头衔(varchar)

图库\u类别\u图库\u图片表连接到上面的表格: 画廊(分类)id(int);; 画廊图片id(内部)

和i18n表: id(int) 语言环境(varchar) 模型(varchar) 外键(int) 字段(varchar) 内容(文本)

我试过:

$this->GalleryCategory->bindModel(array(
            'hasOne' => array(
                'GalleryCategoriesGalleryPicture',
                'GalleryPicture' => array(
                    'className' => 'GalleryPicture',
                    'foreignKey' => false,
                    'conditions' => array('GalleryPicture.id = GalleryCategoriesGalleryPicture.gallery_picture_id')
            ))));
            $galleryCategories = $this->GalleryCategory->find('all', array(
                'fields' => array('GalleryCategory.*','GalleryPicture.*')
            ));
但它总是返回正确的类别表字段和错误的图片表字段。。。 类别字段包含正确的翻译单词。 Pictrures字段包含错误的翻译单词

模型:

class GalleryCategory extends AppModel
{
    public $tablePrefix = 'ef_';
    var $name = 'GalleryCategory';

    public $actsAs = array('Translate' => array(
                                                'title'             => 'titleTranslation'
                                                )
                            );
}



class GalleryPicture extends AppModel
{
    public $tablePrefix = 'ef_';
    var $name = 'GalleryPicture';

    public $actsAs = array('Translate' => array(
                                                'title'             => 'titleTranslation'
                                                )
                            );
}
如何从这两个表中获得正确的翻译单词


ps:“i18n数据库表”的转换仅适用于一个表(例如:仅GalleryCategory或仅GalleryPicture)。

转换不适用于相关模型,请参阅:

请注意,只有您直接执行的
find
模型的字段才会被转换。通过关联附加的模型将不会被转换,因为当前不支持在关联模型上触发回调

更新
这可能有点棘手,因为您有一个HABTM关系-之前我通过向模型的afterFind回调添加第二个数据检索来解决这个问题,但这是一个更简单的关联。希望这有帮助。

翻译不适用于相关模型,请参阅:

请注意,只有您直接执行的
find
模型的字段才会被转换。通过关联附加的模型将不会被转换,因为当前不支持在关联模型上触发回调

更新
这可能有点棘手,因为您有一个HABTM关系-之前我通过向模型的afterFind回调添加第二个数据检索来解决这个问题,但这是一个更简单的关联。希望这有帮助。

谢谢!但这对我来说是个错误的消息…:-/那么如何解决翻译问题呢?你或其他人有什么建议吗?我已经添加了一个建议。如果你能接受我的回答,如果它能回答你的问题,那就太好了!非常感谢。但这对我来说是个错误的消息…:-/那么如何解决翻译问题呢?你或其他人有什么建议吗?我已经添加了一个建议。如果你能接受我的回答,如果它能回答你的问题,那就太好了!