acmestack / gorm-plus

Gorm-plus是基于Gorm的增强版,类似Mybatis-plus语法。Gorm-plus is based on an enhanced version of Gorm, similar to Mybatis-plus syntax.
https://github.com/acmestack/gorm-plus/wiki
Apache License 2.0
281 stars 43 forks source link

构造查询条件的时候使用u.的时候报错,说没有这个字段 #85

Open acxng opened 3 months ago

acxng commented 3 months ago
错误图片

想问下这个怎么解决的?

bingtianyiyan commented 3 months ago

你应该检查数据库里test是否已初始化成功,在dao_test 最上面的nit里。

acxng commented 3 months ago

测试了,增删改查操作都是成功的,作者封装的很好,已star,有三个问题哈?1.要使用事务的话还是得用gorm的吧,2.查询单表的时候能加上缓存吗?每次都请求数据库性能不好,3. &u.字段名的时候你们那也会报错吗?因为u是一个泛型,在go里面必须把泛型转化为实际类型,才可以u.字段名,还是我理解错了?

go
bingtianyiyan commented 3 months ago

1.事务用gorm的,gorm-plus里面有个Tx,包了一下事务 2.缓存这个东西看业务的,一种是业务自己搞,这个框架只是做了一些封装,并没有引入太多,可以有类似AOP拦截搞起来的 3.不会报错,泛型是1.18出来的,然后你的goland什么版本的好像2022之后的才支持泛型,大概率你编译器问题然后不支持泛型,u用方法gplus.GetModel[User]()返回的其实已经是实际类型了比如例子里的[User],才可以点的出来属性的。不然还啥泛型,那还不是匿名的编译器肯定识别不出来的点不出来具体属性的。你goland可以升级下,看着不像是vscode哈

1719283539478
acxng commented 3 months ago

可以,感谢博客解答,问题已全部解决