0

というテーブルがあります

tasks---id ,name,groupid

user----id,username , groupid

今、私は別のテーブルを持っています

userTasks with fields id,name, taskid , userid

新しいユーザーがデータベースに作成または永続化されたときに、

ユーザーが挿入される必要がある同じグループ ID を持つすべてのタスク

usertasks table with taskid and userid

どうやってやるの

ロジックを入れようと思っていますpostFlush() event

しかし、ドクトリンが最初にレコードを選択してからそのテーブルに挿入する方法がわかりません

4

1 に答える 1

1

postFlush 関数内ではなく、データを挿入した直後に行うと、より快適で簡単になります。

$om->persist($user);
$om->persist($task);
$om->flush();

$usertask = new UserTask($id, $name, $user->getId(), $task->getId());
$om->flush();

$om は ObjectManager です。EntityManager は、Doctrine の最終バージョンで非推奨になりました。

postFlush() 関数を使用する場合は、両方の ID をプライベート変数として宣言して、情報を取得する必要があります。

于 2012-08-02T06:09:19.407 に答える