ホームページ >バックエンド開発 >Golang >GORM で外部キー関係を作成する方法 (バージョン 2.0 の前後)?

GORM で外部キー関係を作成する方法 (バージョン 2.0 の前後)?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-01 12:41:15812ブラウズ

How to Create Foreign Key Relationships in GORM (Before and After Version 2.0)?

GORM を使用した外部キ​​ーの作成

GORM で外部キー関係を作成するには、セカンダリの外部キーをリンクする関連付け外部キーを指定する必要があります。プライマリの特定のフィールドにモデルを適用するmodel.

問題:

指定されたシナリオでは、User モデルと UserInfo モデルは、UserInfo の UID が の id フィールドを参照する外部キー関係を持つことを目的としています。ユーザー。ただし、これらの外部キーの関連付けを作成しようとするコードは失敗しているようです。

解決策:

外部キーの関係を確立するには、GORM の AddForeignKey を利用できます。メソッド:

db.Model(&models.UserInfo{}).AddForeignKey("u_id", "t_user(id)", "RESTRICT", "RESTRICT")

説明:

  • 最初の引数「u_id」は、セカンダリ モデル (UserInfo) の外部キー フィールドを表します。
  • 2 番目の引数「t_user(id)」は、プライマリ モデルのテーブルとフィールドを指定します。 (User).
  • 3 番目と 4 番目の引数「RESTRICT」は、主キーが更新または削除されたときの動作を定義します。この場合、操作が制限されます。

注:

この解決策は、GORM バージョン 2.0 より前のバージョンに適用されます。 GORM 2.0 以降では、リレーションシップを定義するときに外部キー制約が自動的に追加されます。

以上がGORM で外部キー関係を作成する方法 (バージョン 2.0 の前後)?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。