Doctrine Manager は、私の側で何も変更せずにユーザーエンティティを更新しようとします
P粉308783585
P粉308783585 2024-04-03 14:04:06
0
1
556

コントローラー メソッドがあり、User エンティティとの関係を持つエンティティ Order の挿入メソッドを作成しています。1 人のユーザーが複数の注文を持つことができます。オーダーを作成してユーザーをそれに設定します。変更しないと Doctrine がユーザーを更新しようとします。何が間違っているのか疑問に思っています。 私のコントローラーの方法

リーリー

私のユーザーエンティティ

リーリー

と私の注文エンティティ

リーリー

そこで、注文を保存しようとしました。その後、上で保存した注文である注文 ID を使用して注文項目を保存しますが、失敗して制約エラーが発生します。 クエリの実行中に例外が発生しました: SQLSTATE[ 23000]: 整合性制約違反: 1048 列「ロール」を空にすることはできません デバッグ後、ここのドクトリンがユーザーを更新しようとしていることがわかりましたが、ユーザーに何も変更を加えていないのに、なぜ更新する必要があるのでしょうか?

P粉308783585
P粉308783585

全員に返信(1)
P粉546138344

さて、答えを見つけた後、この質問に答えるのを忘れていました。User エンティティに見られるように、Erase Credentials メソッドがあります

リーリー

誤解がありました。API リクエストでユーザーを返す前にこのメソッドを呼び出していましたが、更新前にも呼び出されているので注意してください

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート