GORM: テーブルへの 2 つの外部キー

WBOY
リリース: 2024-02-09 18:33:08
転載
1078 人が閲覧しました

GORM: テーブルへの 2 つの外部キー

GORM をデータベース操作に使用する場合、テーブルを同時に 2 つの外部キーに関連付ける必要がある状況によく遭遇します。この場合、外部キーをどのように正しく設定して使用するかが解決すべき問題になります。この記事では、GORMを使ってテーブルの2つの外部キーを処理する方法とその注意点、実践事例をPHPエディターのゆーざいが詳しく紹介します。この記事を学ぶことで、誰もが GORM をよりよく理解し、データベース操作に使用できるようになると思います。

質問内容

ユーザー、イベント、ペアの3つのテーブルを作成したいと考えています。

一致するテーブルには、eventId、user1、user2 の 3 つの列があります。 したがって、user1 と user2 は id を介して Users テーブルを参照します。

SQL でこれを行う方法は知っていますが、ORM を使用してみたいと考えています。ドキュメントを読みましたが、これを行う方法がわかりません

リーリー

次のように gorm タグを使用して何かを実行しようとしましたが、成功しませんでした:

リーリー

また、同様のことを試してみましたが、実行時エラーが発生しました

リーリー
type User struct {
    Id       uint64 `gorm:"primarykey"`
    TGtag    string
    IsActive bool
}

type RCEvent struct {
    Id          uint64 `gorm:"primarykey"`
    DateStarted time.Time
    IsActive    bool
}

type Pair struct {
    EventId uint64
    UserID1 uint64
    UserID2 uint64
}
ログイン後にコピー

回避策

別の構造を外部キーとして使用するには、その ID をターゲット構造の別のフィールドとして追加する必要があります。この場合の実際の例は次のとおりです (gorm の例 # を使用) ##): リーリー

以上がGORM: テーブルへの 2 つの外部キーの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:stackoverflow.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!