1

教義でエンティティの1対多の関係を更新する最良の方法は何ですか? 例: 1 対多の Guest エンティティがマッピングされた、booking というエンティティがあります。

予約が編集されると、ゲストを追加または削除することで、ゲストの数を変更できます。現時点では、送信されたゲストの数をカウントし、現在のゲスト数と異なる場合は、予約したゲストを削除して、新しいゲストを再度追加します!

私にはこれは正しくないように思われ、他の人がこれにどのようにアプローチしているかを知りたい.

コード例:

    if (count($collection)) {
        $numberGuests = count($this->getEntity()->getGuests());
        foreach ($collection as $guest) {
            if ($numberGuests != count($guests)) {
                // delete guest if the number has changed
                $this->getGuestManager()->delete($guest);
            } else {
                // update entity
                $guest->setArrayData(Tools::getData($i, $guests));
            }
        }
    }
4

1 に答える 1