Aerospike-go 库中的嵌入结构意外行为



Aerospike Go 客户端

问题

需要为所有集合添加一组公共字段,即创建于,更新,删除等。为此,我创建了一个结构并将其嵌入所有设置的结构中。我需要将集合中保存的通用结构的字段作为给定记录的字段

示例代码

type Table struct {
   CreatedAt time.Time
   UpdatedAt time.Time
   DeletedAt time.Time
}

type Account struct {
   Table
   Name string
   Status bool
   .....
}

对于上述结构Account。我希望使用垃圾箱名称存储的记录

CreatedAt,UpdatedAt,DeletedAt,Name,Status.....

但是当记录被存储时,垃圾箱名称是

Table,Name,Status...

其中Table是具有键值的地图

是否有可能达到预期的行为?如果是,如何实现?

结构嵌入嵌入方法,不反映属性。内部类型的属性可以通过外部类型访问,但在外部类型的属性中不存在。因此,定义类型属性Table从字面上定义类型Table的属性并不能反映类型Table到类型 Account 的所有属性。

尝试打印您的Account结构 - 游乐场。

最新更新