gpt4 book ai didi

database - 如何引用 Realm 中已经创建的对象?

转载 作者:搜寻专家 更新时间:2023-10-30 20:08:24 26 4
gpt4 key购买 nike

让我们以官方 Realm 文档为例。我们有汽车和人。

const CarSchema = {
name: 'Car',
properties: {
id: {type: 'string'}, // UUID
make: {type: 'string'},
model: {type: 'string'}
}
};

const PersonSchema = {
name: 'Person',
properties: {
name: {type: 'string'},
car: '' // Something here to reference on already created car??
}
};

例如,我已经用 UUID id-s 创建了一些汽车。现在我想创建一个用户。在 UI 中,它看起来像一个表单,您可以在其中输入用户名并从下拉列表中选择一个已经创建的车辆。

那么如何引用已经创建的汽车呢?它应该是带有 id 的字符串,还是什么?

最佳答案

链接是 Realm 中的一等公民,因此您无需引入人为的外键。您可以直接链接到另一个对象模式。在基于 JavaScript 的绑定(bind)中,您可以通过将相关对象架构的名称指定为 type 来实现这一点,如下所示。

const PersonSchema = {
name: 'Person',
properties: {
name: { type: 'string' },
car: { type: 'Car' } // or just: 'Car'
}
};

使用这样的模型,您可以创建 Person 对象,并附加一个已经存在的 Car,如下所示:

const realm = …
const volvo = realm.objects("Car").filtered("make = $0 AND model = $1", "Volvo", "XC60")[0];
const person = realm.create("Person", {
name: "Tim",
car: volvo,
});

关于database - 如何引用 Realm 中已经创建的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40360851/

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