go - 查询有一个关系的正确方法
问题描述
如果我正在寻找有信用卡号码的人,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)
解决方案
db.Preload("Person").Find(&CreditCard)
另外我不认为 PersonID 应该是一个指针。
推荐阅读
- javascript - 如何在没有 npm 的情况下使用 Vue.js 元素?
- java - BrickBreaker .Gameplay 不是抽象的,也不会覆盖错误
- gremlin - Gremlin 代码查找 1 个具有特定属性的顶点
- vba - 使用 VBA 标记发送到多个不同外部域的电子邮件
- javascript - 使用 google drive api 上传大文件时出现 404
- php - 如何在多对多关系中使用更新查询
- maven - Maven pom.xml - 从文件中自动设置依赖版本
- c# - 是什么导致了这个仅影响 Android 8.0 的错误?
- python-3.x - 如何使用 Django 2.2 中的文件进行 yaml 解析?
- node.js - 部署节点应用程序时 Heroku 的“进程以状态 0 退出”错误