3

tableGateway を使用して、ZF2 の 1 つのテーブルにデータを挿入し、別のテーブルにデータを参照する必要があります。

たとえば、ユーザーを登録するときに、ユーザーデータを1つのテーブルに挿入する必要があり、このユーザーは、挿入されたユーザーIDの参照を使用して別のテーブルにデータ(複数行)を趣味とし、データを更新する必要があります。

このURLを参照しました: ZF2で1つのフォームを使用して2つのテーブルに挿入したい

しかし、これは私を助けません。

4

1 に答える 1

3

「ユーザー」モデルにいるとします。したがって、デフォルトでは、tableGateway はユーザー テーブルにデータを挿入し、趣味テーブルの場合は、新しい tableGateway を '$userTable' としてインスタンス化しました。

$data = array(
        'id' => $user->id,
        'name'  => $user->name,
    );
$this->tableGateway->insert($data); //this will insert data in user table
$last_id=$this->tableGateway->lastInsertValue; //getting last inserted id
$adapter=$this->tableGateway->getAdapter(); 
$userTable = new TableGateway('hobbies', $adapter); //this will insert in hobbies table.
$data_arr = array(
        'link_id' => $last_id,
        'music_info'  =>'test',
        );
$artistTable->insert($data_arr);
于 2013-12-17T17:08:34.073 に答える