GoFrame避坑之dao.DB.ALL()

部署运行你感兴趣的模型镜像

这里使用的数据库是postgres

在使用GoFrame对数据库进行操作时,例如

dao.Space.Where(dao.Space.Columns.ProjectId,res.ProjectId).All()

即查询ProjectId字段值为res.ProjectId的所有值,返回一个数组

当该表存在bool类型的值时,偶尔会发现,无论我们数据库里存的是什么,取出来都是true

解决方法1

使用dao.DBname.Where(****).M.ALL()方法进行查询,该方法会返回一个Result []Record类型的返回值,即一个数组

顺便一提,如果此值时返回给web等作为接口数据,完全可以直接返回,只需要将返回值定义为interface{}即可,如果需要取值进行进一步操作,可对该返回值进行变量,例如

A ,err :=dao.Space.Where(xxxx).M.All()

	if err != nil{
		return err
	}

	for _,v := range A{
		sp := new(B)  //B结构体与表结构对应,在Goframe一般为model.表名
		err := v.Struct(sp)
		if err != nil {
			glog.Println(err)
			return err
		}
	}

解决方法2

GF的版本目前进行了维护升级,从v1.15.5开始似乎修复了此问题(盲猜,因为楼主开始使用的是v1.15.4)

GF的强大之处在于它有许多的开发者维护,相信选择GF框架还是一个不错的选择

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值