Ансамбли: какой тип глобального идентификатора выбрать для изображения?
В настоящее время я реализую persistentStoreEnsemble:globalIdentifiersForManagedObjects: делегат, и мне сложно решить, какой глобальный идентификатор предоставить.
Моя базовая модель данных имеет две сущности: книгу и изображение.
Для объектов книги это не проблема, так как я, вероятно, должен вернуть UUID, который должен храниться в выделенном свойстве книги.
Однако я не уверен насчет глобального идентификатора изображения. Обратите внимание, что объекты изображения и книги имеют однозначное отношение в модели данных с помощью правила "каскадного" удаления, что означает, что после удаления книги также удаляется связанное изображение. Таким образом, изображение не может существовать в базе данных без ссылки на книгу.
Основываясь на приведенном выше описании, мне было интересно, должен ли я возвращать NSNull, UUID или хеш-код (вычисляемый во время выполнения по данным изображения) в качестве глобального идентификатора для данного объекта изображения?
Спасибо за любое предложение.
1 ответ
Просто используйте UUID, я бы сказал. Я предполагаю, что изображение сохраняется как внешние данные на объекте, верно? Если это так, Ensembles синхронизирует его и автоматически использует хеш, чтобы гарантировать, что он не будет загружен дважды, если изображение окажется одинаковым. Поэтому для вашей сущности просто используйте UUID, как для сущности книги.