gorm Where 可变字段名

1. 运行环境

  • GO 1.18
  • gorm.io/gorm v1.23.6

2. 问题描述

gorm Where 可变字段名

  1. GetBy 函数中,在使用时,提交的应该是 GetBy("title", "标题"),得出来的 SQL 为:
     SELECT * FROM `topic` WHERE 'title' = '标题' ORDER BY `topic`.`id` LIMIT 1
    得出来的条件是 title == 标题 这必然是属于不存在的。
    是否应该更改为:
     .
     .
     .
     func GetBy(field, value string) (topic Topic) {
         database.DB.Where(fmt.Sprint("%v = ?", field), value).First(&topic)
         return
     }
    或者是说,我的传参方式是错误的?
  2. IsExist 函数中,是否属于缺少了一个 ? 替换值?
讨论数量: 3

file

我的直接改成了這樣 :joy:

1年前 评论
pretendtrue (楼主) 1年前

老哥,go实战课程咋样啊?准备入手,还在犹豫,求解答

3个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!