cakephp3无法使用'关联的'方法

时间:2015-10-09 12:35:09

标签: php cakephp orm

我正在使用一个表:UserMaster并使用:

与PersonMasters相关联
 $this->hasOne('person_masters', [
            'className' => 'person_masters',
            'foreign_key'=>'user_master_id',
            'dependent' => true
        ]);

但是当我保存数据时,它只将数据保存在user_masters表中。我也使用了'关联的' patchEntity中的方法。但它没有用。这是我保存数据的代码:

$user = $this->UserMasters->newEntity(); 
       $user = $this->UserMasters->patchEntity($user,   $this->request->data, ['associated' => ['person_masters']]);

它只将数据保存到user_masters ..所以如何在cakephp3中的person_masters中保存数据? 提前谢谢......

1 个答案:

答案 0 :(得分:0)

如果person_masters无法访问,则不会像这样分配。

  

_accessible属性允许您提供属性映射以及是否可以批量分配它们。值true和false表示是否可以对字段进行质量分配。

http://book.cakephp.org/3.0/en/orm/entities.html#mass-assignment

还使用表别名来定义关联。

$this->hasOne('PersonMasters', [
        'className' => 'PersonMasters',
        'foreign_key'=>'user_master_id',
        'dependent' => true
    ]);