问题描述
我有一个MongoDB集合,该集合存储国家/地区,每个国家/地区都有一个区域数组,每个地区都有一个碎片数组,每个碎片都有扇区。这是代表此设置的结构。
struct Country: Codable,Hashable{
var name: String
var description: String?
var imageUrl: String?
var regions: [Region]
}
struct Region: Codable,Hashable {
var name: String
var descripton: String
var imageUrl: String
var crags: [Crag]?
}
struct Crag: Codable,Hashable {
var name: String
var description: String
var imageUrl: String
var sectors: [Sector]?
}
struct Sector:Codable,Hashable {
var name: String
var description: String
var imageUrl: String
}
我正在使用Vapor 4和mongokitten libray后端,并希望能够将项目添加到各种数组中,例如,我想在一个区域的crags数组中添加碎片。需要将其添加到一个特定的国家/地区,然后将其添加到该国家/地区的一系列区域中。
这些是我尝试过的一些选项。
countryCol.updateOne(where: ["name":country],to: ["$addToSet":["regions.$[region].crags":doc],"arrayFilters":["region.name":region]]
countryCol.updateOne(where: ["name":country,"regions.$" : region],to: ["$addToSet":["crags":doc]])
有人能指出我正确的方向吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)