Ансамбли: какой тип глобального идентификатора выбрать для изображения?

В настоящее время я реализую persistentStoreEnsemble:globalIdentifiersForManagedObjects: делегат, и мне сложно решить, какой глобальный идентификатор предоставить.

Моя базовая модель данных имеет две сущности: книгу и изображение.

Для объектов книги это не проблема, так как я, вероятно, должен вернуть UUID, который должен храниться в выделенном свойстве книги.

Однако я не уверен насчет глобального идентификатора изображения. Обратите внимание, что объекты изображения и книги имеют однозначное отношение в модели данных с помощью правила "каскадного" удаления, что означает, что после удаления книги также удаляется связанное изображение. Таким образом, изображение не может существовать в базе данных без ссылки на книгу.

Основываясь на приведенном выше описании, мне было интересно, должен ли я возвращать NSNull, UUID или хеш-код (вычисляемый во время выполнения по данным изображения) в качестве глобального идентификатора для данного объекта изображения?

Спасибо за любое предложение.

1 ответ

Решение

Просто используйте UUID, я бы сказал. Я предполагаю, что изображение сохраняется как внешние данные на объекте, верно? Если это так, Ensembles синхронизирует его и автоматически использует хеш, чтобы гарантировать, что он не будет загружен дважды, если изображение окажется одинаковым. Поэтому для вашей сущности просто используйте UUID, как для сущности книги.

Другие вопросы по тегам