创建和更新habtm-cakephp
表:销售、绘图付款类型和配方 HABTM:SalePlotRecipe创建和更新habtm-cakephp,php,mysql,cakephp,Php,Mysql,Cakephp,表:销售、绘图付款类型和配方 HABTM:SalePlotRecipe * EXAMPLE * SalePlotRecipe ( id PrimaryKey, sale_id ForeignKey, plot_id ForeignKey, recipe_id ForeignKey ) 创建或更新销售包裹时,应使用销售中填写的数据更新收入 一次销售可以打包,也可以不打包,但所有销售都有一个配方 表的连接处我正在用正确的方式连接三个表?如何为3个表创建记录并更新它们?什么数据格式?
* EXAMPLE *
SalePlotRecipe (
id PrimaryKey,
sale_id ForeignKey,
plot_id ForeignKey,
recipe_id ForeignKey
)
创建或更新销售包裹时,应使用销售中填写的数据更新收入
一次销售可以打包,也可以不打包,但所有销售都有一个配方
表的连接处我正在用正确的方式连接三个表?如何为3个表创建记录并更新它们?什么数据格式?CakePHP使用的函数是什么?如何使用?我尝试过各种表单,为了更新,只需复制记录您应该使用saveAll功能插入数据,并使用php更新数据。 当您以特定格式提供数据时,这也将插入和更新关联模型的数据
$this->SomeModel->saveAll($data, array(
'fieldList' => array(
'SomeModel' => array('field_1'),
'AssociatedModel' => array('field_2', 'field_3')
)
));
单个关联记录的格式:
Array
(
[Student] => Array
(
[first_name] => Joe
[last_name] => Bloggs
)
[Course] => Array
(
[name] => Cake
)
[CourseMembership] => Array
(
[days_attended] => 5
[grade] => A
)
)
多个关联记录的格式:
Array
(
[0] => Array
(
[CourseMembership] => Array
(
[id] => 1
[student_id] => 1
[course_id] => 1
[days_attended] => 5
[grade] => A
)
[Student] => Array
(
[id] => 1
[first_name] => Joe
[last_name] => Bloggs
)
[Course] => Array
(
[id] => 1
[name] => Cake
)
)
)
如果数组中有主字段,则更新的工作方式类似于保存,然后更新else insert。有关更多信息,请参阅此链接。您提供了其他表格的结构,然后我可以帮助您提供所需的格式在这里,您得到了这些文件中都有明确的解释。您使用的是什么版本的CakePHP。保存数据在2.x和3.x之间有很大的不同!