Индекс объекта Realm - это составной индекс свойств или отдельные индексы для каждого свойства. - PullRequest
0 голосов
/ 02 января 2019

Я использую RealmSwift для создания базы данных Realm в своем приложении.Рассмотрим подкласс ' Object ', который я использую как ' ClassA '.' ClassA ' и его свойства можно просто описать, как показано ниже (избегая фактического кода для краткости):

ClassA: Object
-prop1
-prop2
-prop3
-prop4
-prop5
-prop6

Я хочу иметь два индекса на «ClassA».Чтобы быть конкретным, я хочу, чтобы каждый индекс был составной индекс .Давайте назовем два Индекса как ' Индекс1 ' & ' Индекс2 '.И под составным я подразумеваю, что Индекс может иметь несколько свойств.Итак, давайте определим два индекса, как показано ниже:

Index1: prop1, prop2, prop6
Index2: prop3, prop4, prop5

Мне нужны эти составные индексы, чтобы иметь более быстрые выборки, в случае, если у меня есть значения для этих конкретных свойств.Это очень важно для моего приложения.

Предоставление индексов для реальных объектов с использованием RealmSwift осуществляется путем переопределения Object.indexedProperties () путем возврата массива String, содержащего имена свойств, которые мы хотимindex.

Я хочу знать, создаст ли это отдельный индекс для каждого свойства или один составной индекс для всех свойств.

1 Ответ

0 голосов
/ 02 января 2019

Как я понимаю, документация Object.indexedProperties () создаст индекс для каждого возвращаемого вами свойства, но без составного индекса.

Что вы можете сделать, чтобы обойти это, - это создать новые свойства для ваших объектов, которые объединяют свойства, которые вы хотите использовать для составного индекса.

Пример: создание нового свойства indexProp126 путем объединения prop1 , prop2 и prop6 в строку (так же, какНапример, есть, вероятно, более эффективные способы, такие как хэши и т. д., в зависимости от того, какой тип и содержание этих свойств на самом деле), и используйте их в качестве индекса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...