我是NoSQL世界的新手,几天前开始使用MongoDB入门项目开发新项目。我正在努力了解关系在NoSQL中如何真正发挥作用。
例如,我有一个国家/地区->地区->城市->地区
首先,为此,我使用@DBRef将对“许多”对象的引用保存在“一个”对象中。我的问题是如何从子对象获取父对象。我可以参考一下吗?所以我在国家对象中保存了country_id,这是正确的实现吗?
@Document("country")
class Country (
@Id
var id: String? = null,
var active: Boolean = true,
var name: TextValue? = null,
@DBRef
var regions: MutableList<Region> = mutableListOf(),
var priority: Long? = 0,
var countryCode: String? = null,
var phoneCode: Long? = null
){
constructor(id: String) : this() {
this.id = id
}
constructor(id: String, isActive: Boolean): this(){
this.id = id
this.active = isActive
}
}
@Document("region")
class Region(
@Id
var id: String? = null,
var active: Boolean = true,
var name: TextValue? = null,
var country_id: String? = null,
@DBRef
var cities: MutableList<City> = mutableListOf(),
var priority: Long? = 0
){
constructor(id: String): this(){
this.id = id
}
}
第二,如果我想更新区域及其country_id,该怎么办?这意味着我正在将地区的关系从一个父母变成另一个父母。