首页 > 解决方案 > 查询有一个关系的正确方法

问题描述

如果我正在寻找有信用卡号码的人,CreditCardNumber这是正确的方法吗?

type Person struct {
    gorm.Model
    Name            string
    CreditCard CreditCard 
}

type CreditCard struct {
    gorm.Model
    PersonID       *uint
    Number string
}

database.dbClient.
   Preload("CreditCard").
   Where("credit_card.number = ?", CreditCardNumber).
   Joins("left join credit_cards on person.id = credit_card.person_id AND credit_card.deleted_at is NULL").
   First(&Person)

标签: gogo-gorm

解决方案


db.Preload("Person").Find(&CreditCard)

另外我不认为 PersonID 应该是一个指针。


推荐阅读