小编cKe*_*lly的帖子

cakephp 3.x保存多个实体 - newEntities

我在保存多个记录方面遇到了最困难的时间.我已经尝试了一百万件事,但我最终遇到了同样的问题:我的记录没有保存,我也看不到任何错误.请记住,我是cakephp和新手编码器的新手.

我错过了一些明显和关键的东西吗?

表:

    $this->table('splits');
    $this->displayField('id');
    $this->primaryKey('id');

    $this->belongsTo('Transactions', [
        'foreignKey' => 'transaction_id',
        'joinType' => 'INNER'
    ]);
    $this->belongsTo('Accounts', [
        'foreignKey' => 'account_credit_id',
        'joinType' => 'INNER'
    ]);
Run Code Online (Sandbox Code Playgroud)

控制器:

    $splits = $this->Splits->newEntity();
    if ($this->request->is('post')) {
        $splits = $this->Splits->newEntities($this->request->data());

        debug($splits);

        foreach ($splits as $split){
            $this->Splits->save($split);
        }
   }

    $transactions = $this->Splits->Transactions->find('list', ['limit' => 200]);
    $accounts = $this->Splits->Accounts->find('list', ['limit' => 200]);
    $this->set(compact('split', 'transactions', 'accounts'));
    $this->set('_serialize', ['split']);
Run Code Online (Sandbox Code Playgroud)

模板:

        echo $this->Form->input('Splits.1.transaction_id', ['options' => $transactions]);
        echo $this->Form->input('Splits.1.amount',  ['type' => 'float']);
        echo $this->Form->input('Splits.1.account_id', ['options' => $accounts]);
        echo $this->Form->input('Splits.2.transaction_id', ['options' => $transactions]); …
Run Code Online (Sandbox Code Playgroud)

entities cakephp cakephp-3.0

5
推荐指数
1
解决办法
9915
查看次数

标签 统计

cakephp ×1

cakephp-3.0 ×1

entities ×1