登录
首页 >  Golang >  Go问答

使用 RAW 内置函数 GORM 时未声明的名称 const

来源:stackoverflow

时间:2024-04-08 11:39:34 344浏览 收藏

在Golang实战开发的过程中,我们经常会遇到一些这样那样的问题,然后要卡好半天,等问题解决了才发现原来一些细节知识点还是没有掌握好。今天golang学习网就整理分享《使用 RAW 内置函数 GORM 时未声明的名称 const》,聊聊,希望可以帮助到正在努力赚钱的你。

问题内容

我想使用 gorm 中的 raw 函数作为我个人项目的要求

这是我的实体

type student struct {
    id int `json:"id"`
    name string `json:"name"`
    address string `json:"address"`
}

所以我创建了要在 raw 参数中调用的常量

const (retrievedata = `select id, name, address from users where id = ?`)

然后我构建函数

type mysqlrepository struct {
    gormdb *gorm.db
}

func(repo *mysqlrepository) retrieveuserdata(id int) (student, error) {
    data := student{}
    
    db := db.gormdb.raw(retrievedata, 3).scan(&data)
    return data, db.error
}

为什么我的函数会收到警告

undeclared name: RetrieveData (compile)go-staticcheck

是不是因为untype string类型?


正确答案


很可能 RetrieveDatafunc RetrieveUserData 中无法访问
将其移至同一包或使用 .RetrieveData

今天关于《使用 RAW 内置函数 GORM 时未声明的名称 const》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>