Cakephp 3 模型创建
Posted
技术标签:
【中文标题】Cakephp 3 模型创建【英文标题】:Cakephp 3 model create 【发布时间】:2015-07-12 09:08:35 【问题描述】:在 cakephp 2 中,在循环更新表时,为了重置表 id 和数据,我使用 create 然后进行保存。 http://book.cakephp.org/2.0/en/models/saving-your-data.html#model-create-array-data-array
$data = array('username' => usernameArray[$i], 'age' => $ageArray[$i] );
$this->Mytable->create();
$this->Mytable->save($data);
Cakephp 3 的新 ORM 中是否有等效的功能,或者新的数据库系统会自动处理这个功能吗?
要使用剩余代码,我将在循环中使用此代码。我需要创建函数吗?
$data = array('username' => usernameArray[$i], 'age' => $ageArray[$i] );
$tableInstance = TableRegistry::get('Mytable');
$entity = $tableInstance->newEntity($data);
$tableInstance->save($entity);
【问题讨论】:
【参考方案1】:您可以使用newEntities()
方法从请求数据创建实体列表。然后,您可以使用循环来保存实体。
$this->loadModel('Users');
$users = $this->Users->newEntities($this->request->data());
foreach ($users as $user)
$this->Users->save($user);
docs 显示newEntities()
的预期输入格式。
【讨论】:
如果我没有数据,我想创建空记录怎么办? 使用空数组调用 newEntity()。以上是关于Cakephp 3 模型创建的主要内容,如果未能解决你的问题,请参考以下文章
CakePHP 2.1 - 保存(和创建)多个连接模型和关联模型
php [cakephp:UserstampBehavior]在保存之前将用户的id创建/修改为实体的模型行为。 #cakephp