gpt4 book ai didi

mongodb - 谷歌应用引擎 : One To Many relations in Go

转载 作者:数据小太阳 更新时间:2023-10-29 03:07:21 25 4
gpt4 key购买 nike

我目前正在决定将哪个堆栈用于(小型)社交网络。我很乐意在 Google App Engine 上用 golang 编写代码,因为这会产生干净、快速的代码,并具有现代云服务和托管的所有优势。

您将如何在 GAE 中使用 golang 实现一对多和/或多对一关系?根据文档,您可以在数据存储结构中使用自己的类型,只要它们的属性是文档中提到的那些。例如:

type Comment struct {
Title string
Text string
User *User
}

type Photo struct {
Description string
Comments []*Comment
}
我认为

应该工作,我是对的吗?如果我是对的,我怎么能:

a) 在一次查询中填充此关系?

b) 以方便的方式向照片添加评论? (例如 MongoDB 的“$push”)

最好的,米歇尔

最佳答案

在 App Engine 上,您可以使用两种实体类型对其进行建模:

type Comment struct {
Title string
Text string
User *User
}

type Photo struct {
Description string
}

使用 ancestor path将 child 的评论与 parent 的照片相关联。您可以在单个查询中获取照片的所有评论。您可以通过放置新的评论实体来添加评论。

我认为您可以使用问题中的类型存储照片(根据文档看起来您可以,但我没有在实体中嵌套三层的个人经验)。要使用此设计添加评论,应用程序会获取照片(这将包括评论),将评论添加到照片,然后将包含所有评论的照片放回数据存储区。

App Engine 没有像 Mongo 的 $push 这样的实体修改运算符。

关于mongodb - 谷歌应用引擎 : One To Many relations in Go,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26036037/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com