登录
首页 >  Golang >  Go问答

从ArangoDB中读取任意对象的步骤

来源:stackoverflow

时间:2024-03-05 13:54:25 191浏览 收藏

有志者,事竟成!如果你在学习Golang,那么本文《从ArangoDB中读取任意对象的步骤》,就很适合你!文章讲解的知识点主要包括,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~

问题内容

我正在尝试构建一个相当通用的服务来在 arangodb 中创建图形。

在我的 readvertex() 函数中,我希望能够读取具有顶点任意字段的属性并将其读入变量,最好是字符串,而不必使用硬编码的 json 标签创建特定结构特定属性。

我可以毫无问题地插入任意对象作为顶点的属性,并且我尝试将它们读入字符串,但它总是显示为空白。

我想要完成的示例:如果顶点有一个属性: "prop1": {"nested1": true, "nested2": false} 和一个属性 "prop2": "just一个字符串“,在我的 readvertex() 函数中我希望能够执行以下操作

// query the database and get a cursor containing prop1 and prop2

var prop1 someType
cursor.ReadDocument(ctx, &prop1)
fmt.Println(prop1.String()) // should print {"Prop1": {"Nested1": true, "Nested2": false}}

var prop2 someType
cursor.ReadDocument(ctx, &prop2)
fmt.Println(prop2.String()) // should print {"Prop2": "Just a string"}

我希望 prop1 和 prop2 的类型相同。


解决方案


事实证明答案比我想象的要简单得多。如果 prop1prop2 类型为 interface{} ,则此方法有效,它以映射形式读取数据,然后只要映射中的键都是字符串(在我的情况下是字符串),即可将其转换为 json 字符串我可以使用 json.Marshal() 并将返回的字节数组转换为字符串。

今天关于《从ArangoDB中读取任意对象的步骤》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>