Сохранение последнего NSManagedObject перед выходом и извлечением - основные данные - PullRequest
1 голос
/ 12 февраля 2012

Я использую nsfetchedresultscontroller для поддержки сущности "Продукт".Но я установил предикат "forUser==%@", currentUser", Пользователь - это другая сущность.

Хотя я могу загрузить в currentUser во время выполнения, но я хотел сохранить «CurrentUser» где-то в nsuserdefaults, в SQL я бы сохранилprimaryKey этого пользователя там, на appDidFinishLaunching я мог бы взять это и получить сущность.

Я не уверен, что именно я должен сохранить, когда дело доходит до сущности в NSUserDefaults.

Я неЯ не хочу добавлять дополнительный атрибут

"последний доступ"

для пользователя, потому что за один раз существует только один текущий пользователь, и это имеет смыслк тому же идентификатору.Я могу сохранить lastName или firstName, но думал о лучшем способе сделать это, например, о каком-то integerID.

Сохранение NSManagedObjectID URI также было вариантом, но это изменило бы в случае каких-либо изменений миграции или графов основных данных и сломало бы приложение при обновлении.

, пожалуйста, помогите мне понять это в основных данных.

Ответы [ 2 ]

0 голосов
/ 12 февраля 2012

Вы должны добавить идентификатор для указанного вами варианта использования.Вы хотели сохранить его в NsUserDefaults, верно?

0 голосов
/ 12 февраля 2012

Вы ответили на свой вопрос. Вы говорите, что хотите найти способ уникальной идентификации пользователей.

Если у пользователей нет уникально идентифицирующего атрибута, то у вас есть только NSManagedObjectID URI. Но это может измениться во время миграций.

Таким образом, вам нужно добавить атрибут, который однозначно идентифицирует пользователей или, по крайней мере, однозначно идентифицирует последнего пользователя.

...