使用关联表保存i18n数据

时间:2016-10-19 05:53:32

标签: mysql cakephp internationalization cakephp-3.0

我希望保存所有关联表的语言本地化数据。见下面的例子。

有两张表Table1& Table2

class Table1Table extends App {
   $this->hasOne('Table');
}

class Table1Controller extends Controller
{
   public function index() {
      $data = [
         'Table1' => [
             'field1' => 'aaaa'
         ],
         'Table2' => [
             'field2' => 'bbbb'
         ]
      ];

      $entity = $this->Table1->newEntity($data,[
         'associated' => [
            'Table2'
         ]
      ]);

      $entity->translation('de')->set('field1','aaaa');
      $entity->translation('de')->set('Table2.field1','bbbb');
   }

   $this->Table1->save($entity);
}

此处Table1 i18n数据已保存,但Table2 i18n数据未保存。

请帮助我解决这个问题。

提前致谢。

1 个答案:

答案 0 :(得分:0)

我找到了答案。代码有点变化,如下所示,已经完成了。

$entity->translation('de')->set('field1','aaaa');
$entity->Table2->translation('de')->set('field1','bbbb');