【发布时间】:2016-07-22 08:50:00
【问题描述】:
我有 JobsTable:
这是关系定义:
$this->hasMany( 'JobContracts', [
'foreignKey' => 'job_id'
] );
保存代码:
$entity = $this->patchEntity( $entity, $toSave, [
'fieldList' => ['notes],
'associated' => [
'JobContracts' => ['fieldList' => ['id', 'checked']]
]
] );
现在:
如果我将此注释放在 fieldList 中,则 JobContracts 没有正确保存。
如果我删除 fieldList,那么我可以正确保存它。
问题是为什么?我还需要控制基本模型字段。有什么建议吗?
我已经检查过了:http://book.cakephp.org/3.0/en/orm/saving-data.html#avoiding-property-mass-assignment-attacks
【问题讨论】:
-
请尽量避免使用“未正确保存”之类的描述,这可能意味着任何事情,而在编程世界中,一切都是为了准确。即使问题对于了解 CakePHP 内部结构的人来说可能很明显,但请始终尽可能具体地说明究竟会发生什么,以及您期望会发生什么。
标签: cakephp orm cakephp-3.0 cakephp-3.x