Я использую realm в моем проекте Swift, и у меня возникают проблемы, частично обновляющие объекты.Realm: Частичное обновление
Проблема заключается в том, что у меня есть объект, содержащий информацию с сервера плюс генерируемые пользователем информацию. В моем случае это Тема, которая по умолчанию может быть видимой или скрытой, но пользователь может изменить значение видимости.
Когда я запускаю мое приложение в первый раз, когда я называю мой сервер API для извлечения информации для создания Темы объекта: он имеет как visibility
значения undefined
. Затем пользователь делает выбор и устанавливает значение visibility
на visible
.
Во второй раз, когда я запускаю приложение, я снова получаю информацию с сервера, и я воссоздаю Тема. Затем я вызываю метод Realm add:update:
для обновления объекта, но это еще раз обновляет свойство visibility
до undefined
.
Я знаю, что существует другой метод create:value:update:
, но это означает, что мне нужно создать большой словарь со всеми значениями, которые я хочу обновить. Мои объекты модели не такие маленькие, в некоторых случаях у меня много свойств, и словарь будет огромным. Мне не нравится этот подход, его сложно поддерживать.
У вас есть какой-либо намек на то, как обращаться с таким случаем?
possibile способом было бы создать еще один объект (таблицу), которая имеет отношение к Тема и одно свойство visibility
, не переопределен, когда я снова создать тему, но это звучит странно, чтобы создать таблицу только для этого вещь.
Создает ли ваш объект 'Тема' свойство первичного ключа? Если нет, то каждый раз, когда вы вызываете 'add: update:', вы фактически создаете новую копию объекта в Realm. – TiM
О, извините, я забыл упомянуть, что это так. – Wolf