请任何人举个例子
答案 0 :(得分:7)
save
用于简单保存模型:
Array
(
[ModelName] => Array
(
[fieldname1] => 'value'
[fieldname2] => 'value'
)
)
假设上述信息存储在名为$ data的数组中,可以调用
$this->ModelName->save($data);
为了将记录插入到模型的表中(如果未指定id
字段)或更新模型表的记录(如果指定了id
字段)。
saveAll
用于:
保存模型的多个记录
Array
(
[Article] => Array
(
[0] => Array
(
[title] => title 1
)
[1] => Array
(
[title] => title 2
)
)
)
因此,您可以同时保存多个模型,而不是每次循环使用save()
。
保存模型的相关记录
Array
(
[User] => Array
(
[username] => billy
)
[Profile] => Array
(
[sex] => Male
[occupation] => Programmer
)
)
这会同时保存User
和Profile
模型。否则,您必须先为save()
致User
,获取新保存用户的id
,然后将Profile
设置为user_id
id
。
直接从the book获取的示例。
答案 1 :(得分:0)
saveAll将所有模型数据保存在表单中,而save只保存一个。因此,您可以使用save来保存单个值,而saveAll基本上可以省去使用循环进行保存的麻烦。
答案 2 :(得分:0)
自Cake 2.0起
保存将模型数据(基于白名单,如果提供)保存到 数据库。默认情况下,验证在保存之前进行。
saveAll 为单个模型保存多个单独的记录;也适用于单个记录及其所有相关记录。