同期メソッドを使用してピボット ID によって注文商品を更新したいと考えています。私のシナリオでは、注文には同じ ID を持つ複数の商品が含まれる可能性があり、呼び出しているピボット ID の商品を更新し、呼び出している他の商品を削除したいからです。製品は更新されていませんが、同期構文から製品 ID を受け入れることがわかります。
###例###リーリー商品を注文に添付すると、本文とピボット テーブルは次のようになります。
注文ID | ###製品番号### ###色### ###量###1 | 1 | ||
---|---|---|---|---|
2 | 1 | 1 | ###黒###10 | |
3 | 1 | 2 | ###黒###1 | |
リーリー | テーブルをどのようにしたいですかid | 注文ID | ###製品番号### ###色### ###量###
1
1
12 | 3 | 1 | 2 | ###青###|
---|---|---|---|---|
しかし、予想通りのエラーが発生しました | リーリー | 注文コントローラー | リーリー | 注文商品の移行 |
複数の関係に属さずにこれを処理する必要があり、中間モデルまたはピボット モデルを作成する必要があります。
リーリーそして、注文と製品モデルを変更する必要があります (使用しない場合、製品モデルはオプションです)
リーリーコントローラーの更新メソッド内で
// リクエストの構造が
であると仮定します。 リーリー独自の同期メソッドを作成する必要があります
リーリーこれがお役に立てば幸いです。エラーを防止し、対応する検証を追加するためにトランザクションを使用することもできます。