我想使用带有for循环的Save函数在Cakephp中保存10次,但似乎不起作用。它仅保存一个数据。

我们如何做到这一点,以便一次通话即可保存多个数据?

下面是我的代码...

        for($i=0;$i<10;$i++){
        $unique_id = $this->_unique($userData['User']['id']); // Unique id with userid as initial prefix
        $this->data['Invite'] = array('invited_user' => $userData['User']['id'], 'unique_id' => $unique_id);
        $this->User->Invite->save($this->data['Invite']);
            }

最佳答案

您需要为循环的每次迭代调用Model::create()。 IE:

<?php
    for( $i=0; $i<10; $i++ ){
        $this->User->Invite->create( );
        $unique_id = $this->_unique($userData['User']['id']);
        $this->data['Invite'] = array('invited_user' => $userData['User']['id'], 'unique_id' => $unique_id);
        $this->User->Invite->save($this->data['Invite']);
        unset( $this->data[ 'Invite' ] );
    }
?>

10-01 15:33