gorm中的外键

时间:2018-11-26 21:17:28

标签: go go-gorm

这是我的代码:

 2 a    = λx.a (a x)     (i)
(2 a) b = a (a b)        (ii)

但是我不明白为什么在查询对象后打印对象时,MicroService的mongodb为空。

当我在创建中打印字段mongodb时,就可以了:

  

{{1 2018-11-26 22:08:16.436503737 +0100 +0100 2018-11-26   22:08:16.504275897 +0100 +0100} mlab.com toto titi Prod tata   23930}

但是当我尝试重新创建微服务对象时,mongo字段为空:

  

{{2 2018-11-26 22:09:15.73203579 +0100 +0100 2018-11-26   22:09:15.73203579 +0100 +0100} 8307托托比斯{{0 0001-01-01   00:00:00 +0000 UTC 0001-01-01 00:00:00 +0000 UTC}} 1个产品}

如何通过关联的mongo结构获得良好的微服务结构?

1 个答案:

答案 0 :(得分:0)

MongoId是 uint数据类型,而不是int

您可以使用另一种方式在Mongo模型中使用int字段:

type Mongo struct {
gorm.Model
Ms int // for example
....
}

,然后在MicroService模型中:

type MicroService struct {
gorm.Model
Url        string
Port       string
Version    string
Name       string
Etat       string
MongoDb    Mongo `gorm:"foreignkey:MongoId;association_foreignkey:Ms"`
MongoId int
Env     string
}