草庐IT

gorm-gen

全部标签

postgresql - Gorm卡在gorm.Open上,没有报错但是没有反应

我正在尝试将gorm用作应用程序的ORM,但gorm.Open似乎永远不会返回,这使我的应用程序挂起。我的测试用例与我在网上看到的所有示例之间的唯一区别是我的测试用例连接到一个AWS盒子,而所有其他的都连接到本地Postgres实例。这重要吗?我的代码是:funcinitDB(){varerrerrordb,err:=gorm.Open("postgres","host=something.rds.amazonaws.comuser=awsuserdbname=dbsslmode=disablepassword=awspassword")iferr!=nil{panic(err)}lo

go - 扫描到 gorm 模型的结构

我正在尝试将查询结果扫描到由gorm模型组成的结果结构中。代码构建且查询通过,但结果数组由如下默认值组成:{{0000000001-01-0100:00:00+0000UTC0001-01-0100:00:00+0000UTC00001-01-0100:00:00+0000UTC{假}}{0000{0假}{0假}{0假}0001-01-0100:00:00+0000UTC假{0假}{0假}{假}{错误的}}}此外,结果数组的长度与查询结果的长度完全相同(当我通过pgadmin手动尝试时),但它们没有正确映射。这是可能的还是一个gorm错误。代码:主要包import("fmt""test

sql - 模式交换支持 Go GORM

我正在编写一个RESTAPI,我需要在其中动态部署到多个模式的连接。示例:我有两个模式,我需要根据哪个用户尝试使用数据来更改它们。想法是有许多其他方案,每个用户一个。我看到了这个问题,但使用的示例是static需要找到一种动态变化的方法。我会将用户模式放入JWTtoken中。我的项目:Panda-API有什么建议吗? 最佳答案 选项1您可以更改database.GetConnection()方法以接收用户名并直接连接到数据库,而无需更改所有服务和模型。您将用户存储在security_middleware.go上的gin.Contex

mysql - 使用 GORM for Golang 的一对一关系映射

我想了解GORM如何与MySQL进行一对一的关系映射。我有2个这样的结构:typeUserstruct{Iduint`gorm:"AUTO_INCREMENT"`FirstNamestring`gorm:"column:first_name"`LastNamestring`gorm:"column:last_name"`EncryptedUserIdstring`gorm:"size:255"`Emailstring`gorm:"notnull;unique"`Passwordstring`gorm:"notnull;unique"`CreatedAtint64`gorm:"type(

validation - 结合 GO GIN-GONIC GORM 和 VALIDATOR.V2

我是Go的新手,我想通过设置GIN-GONICAPI来启动。我找到了这个tutorial我对那个骨架很满意。但现在我坚持使用我添加的验证过程:“gopkg.in/validator.v2”和typeTodostruct{gorm.ModelTitlestring`json:"title"`Completedint`json:"completed"`}成为typeTodostruct{gorm.ModelTitlestring`json:"title"**validate:"size:2"**`Completedint`json:"completed"`}然后在我添加的CreateTod

mysql - mysql 的 gorm : record not found

//fortrade_servicetypeAmountConfigstruct{MaxCnyfloat64`thrift:"max_cny,1"json:"max_cny"`MaxBtcfloat64`thrift:"max_btc,2"json:"max_btc"`}//typeAmountConfigstruct{gorm.Modeltrade_service.AmountConfig//}funcgetAmountConfig()(amount_config*trade_service.AmountConfig,errerror){db,err:=getORMDB()iferr

postgresql - Go-Gorm 是否支持在 PostgreSQL 中使用自动递增 ID 插入分区表?

我在PostgreSQL中有一个表,表示为以下Go结构:typeAppLogstruct{IDint//settoautoincrementinDB,alsoaprimarykeyeventstringcreateTimetime.Time}我配置了月度表分区,将上面的内容作为基表,并使用插入触发器将数据路由到当前月份的子表中,使用日期时间值作为分区键。[为简洁起见省略了触发函数等]当我尝试插入AppLog表时,Postgres将操作路由到适当的子表,例如AppLog_2017-05(当前月表),但插入失败并出现以下错误:INSERTINTO"app_logs"("event","cr

mysql - 使用 gorm 向 MySQL 插入既是 PrimaryKey 又是 DEFAULT 的字段

我想要一个表,其主键是一个自动生成的时间戳(我知道这通常不是最好的主意,但在我的情况下没问题)并且它有另一个字符串字段。这是我使用的数据结构:typeGlobalDefaultstruct{Timestamptime.Time`gorm:"primary_key"sql:"DEFAULT:current_timestamp"`Versionstring`sql:"notnull"`}当我将此数据结构与AutoMigrate一起使用时,我确实得到了一个以时间戳作为主键的表,我什至可以运行insertintoglobal_defaults(version)VALUES('1.5.3');并

postgresql - gorm+go+pg : query for related

所以我们有一个有名字的人。名字和姓氏。让我们插入带有名字和姓氏的Person并再次按Name.First查询Person。怎么办?packagemainimport("fmt""log""github.com/jinzhu/gorm")var(pgHoststringpgUserstringpgDatabasestringpgPassstring)typePersonstruct{gorm.ModelName*NameNameIDuint}typeNamestruct{gorm.ModelPersonIDuintFirststringLaststring}funcmain(){//le

go - 如何使用 Gorm 删除 Go 中的重复代码

我在golang中使用gorm包作为我的数据库库。我有很多数据库表,例如“主机”或“订单”。在我的CRUD应用程序中,每个Controller都有函数setHost/setOrder....我可以为每个Controller编写这个设置函数。但更好的方法是只有一个函数,我将使用第一个参数创建与参数具有相同类的对象,然后将其传递给gorm,gorm将用数据库中的数据填充它,然后返回它。我尝试为此使用反射,但失败了,因为我可能不太了解它。也许我只是没有发现gorm库中的某些功能,或者我无法正确使用reflect包。我应该如何实现设置功能。是否可以实现此功能,还是我应该重复我的代码?typeH