GORM の外部キーが更新されない
Feb 09, 2024 am 11:57 AM最近 GORM を使用していたときに、外部キーが更新されていないという問題が見つかりました。関連テーブルの外部キー フィールドの値を更新したときに、他のテーブルに対して同期的に更新されませんでした。調査と研究の結果、これは GORM がデフォルトで外部キー フィールドを自動的に更新しないためであることがわかりました。この問題はしばらく私を悩ませていたので、解決策をみんなと共有することにしました。この記事では、この問題を回避するために、GORM を使用して外部キー フィールドを正しく更新する方法を説明します。
質問内容
机が2つあり、1つは会社です
リーリーもう 1 つは product_entitlement です
リーリーCompanyID は外部キーです。 CompanyID には Company.Id
の値が含まれます更新挿入が完了すると、毎回新しい行が挿入されます。これは私たちが使用しているコードです
リーリーしかし、常に失敗し、エラーが発生します
BD820BD3F94A2A45E18ED8E8094EF395ID が存在する場合は Product_entitlement を更新し、存在しない場合は新しい ID を作成したいです
URLは以下の通りです。 http://localhost:8080/company/{{companyId}}/product/{{companyId}} と PUT メソッドを使用します 本体は
です{"Type": "Automatic"}
回避策
誰かの役に立つ場合は、FirstOrCreate
関数を使用して ID が存在するかどうかを確認し、更新することができます。存在しない場合は新しいものを作成します。
外部キーを割り当てるには、値を関連テーブルに割り当てる必要があります。
entitlementRequest.CompanyID = uid
以上がGORM の外部キーが更新されないの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

人気の記事

人気の記事

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Go Language Packのインポート:アンダースコアとアンダースコアなしの違いは何ですか?

MySQLクエリ結果リストをGO言語のカスタム構造スライスに変換する方法は?

GOでテスト用のモックオブジェクトとスタブを書くにはどうすればよいですか?

GOのジェネリックのカスタムタイプ制約を定義するにはどうすればよいですか?

トレースツールを使用して、GOアプリケーションの実行フローを理解するにはどうすればよいですか?
