0

我在离线的第一个 React Native 应用程序中使用 Realm JS (10.2.0),我们从 REST API 获取数据。有许多不同的实体,其中一些相互之间有关系。我们目前返回整个结构,包括 JSON 响应中的相关实体。这变得非常缓慢并且似乎效率低下。是否可以只返回关系的相关 ID(主键),因此 Realm 仍然可以建立关系而无需每次都需要完整的实体?我们已经通过单独的请求单独获取它们,因此它们存在于 Realm 数据库中。

一个简单的示例方案如下,其中“Shop”有多个“Contacts”。在这种情况下,联系人已经存在于 Realm 数据库中,因此在商店的 JSON 响应中,我只想返回与其相关的联系人的 ID。

const ShopSchema = {
  name: 'Shop',
  primaryKey: 'id',
  properties: {
    id: 'int',
    name: 'string',
    postal: 'string?',
    city: 'string?',
    address: 'string?',
    phone: 'string?',
    end_cap: 'bool',
    perfect_store: 'bool',
    revenue: 'double?',
    contacts: 'Contact[]',
  },
}

const ContactSchema = {
  name: 'Contact',
  primaryKey: 'id',
  properties: {
    id: 'int',
    first_name: 'string?',
    last_name: 'string?',
    email: 'string',
    phone: 'string?',
    signature: 'string?',
  },
}

Shop的创建目前是这样的:

response.data.data.forEach((shop) => {
  realm.create('Shop', shop, true)
})
4

0 回答 0