React Native MongoDB Realm数据库
doc解释了如何创建一对多关系模式,如下所示:
const Person = {
name: "Person",
properties: {
name: "string",
birthdate: "date",
dogs: "Dog[]"
}
};
const Dog = {
name: "Dog",
properties: {
name: "string",
age: "int",
breed: "string?"
}
};
但是我没有看到它解释如何在数据库中添加属于一个人的狗对象。一个人应该以某种方式指定。
我使用的是Realm React,所以狗的创建代码看起来像这样:
person1: Person = ...
realm.write(() => {
return new Dog(realm, dogFields);
});
如果我在数据库中已经有了一个person1,如何修改这段代码,使person1成为这只新创建的狗的所有者。
1条答案
按热度按时间6ljaweal1#
这是一个很好的概念性问题,我认为这可以在一个高层次上解决。
首先使用Person对象的一些伪代码,该对象具有名称、狗列表和Dog对象。
从概念上讲,如果在代码中示例化Person
然后是一只狗
然后将狗添加到Personsdogs属性中,
当Person在一个写事务中被写到Realm时,狗也会被写到Realm!这有多酷?
另一个例子是,如果在现有的person中有一个已经被写入的对象,当它被读入并且新的狗被添加到person中时(在一个写事务中),它们将被添加到person列表中,并且也被作为单独的对象写入
最后,如果已经写入了Person和Dogs,如果读入了一个人,然后读入了一只狗,当在写事务中将狗添加到Person Dog属性时,它将只更新人,因为狗已经存在。