Cakephp在一个模态中保存多个数据(用户id)


Cakephp save multiple data (users id) in a modal

我想在TempUser modal中保存多个用户id。

问题: TempUser模式中没有保存多个用户id。

首先获取所有用户id:

$this->loadModel('User');
pr($this->User->find('all',  array('fields' => 'id')));

在数组中获取输出

Array
(
    [0] => Array
        (
            [User] => Array
                (
                    [id] => 1
                )
        )
    [1] => Array
        (
            [User] => Array
                (
                    [id] => 2
                )
        )
    [2] => Array
        (
            [User] => Array
                (
                    [id] => 3
                )
        )
)

现在我想将这些用户id保存在TempUser modal中。

//saving users id in **TempUser** modal
$this->loadModel('TempUser');
$this->TempUser->saveAll(); //What should i pass here in saveAll()

如何保存以上数据?

CAKEPHP中有没有内置的方法来保存这种类型的数据?

try this

$cake = array
(
    array
        (
            'User' => array
                (
                    'id' => 1
                )
        ),
    array
        (
            'User' => array
                (
                    'id' => 2
                )
        ),
    array
        (
            'User' => array
                (
                    'id' => 3
                )
        ),
);
$tempUser = array();
foreach ($cake as $value) {
    $tempUser[]['TempUser']['id'] = $value['User']['id'];
}
$this->loadModel('TempUser'); //saving users id in **TempUser** modal
$this->TempUser->saveAll($tempUser); //What should i pass here in saveAll()

saveAll期望一个关联数组。一个例子:

$arr = array(
    array(
        'User' => array(
            'name' => 'John',
            'dob' => '1987-03-04'
        )
    ),
    array(
        'User' => array(
            'name' => 'Jane',
            'dob' => '1989-06-09'
        )
    )
);
$this->User->saveAll($arr);