#objective-c #swift #core-data #nspersistentcontainer
#objective-c #swift #основные данные #nspersistentcontainer
Вопрос:
Когда Apple добавила новый класс PersistentContainer, они изменили расположение хранилищ данных. Это означает, что если вы добавите новый PersistentContainer, он не получит текущую базу данных, а создаст ее. Основная проблема заключается в том, что новое хранилище находится внутри другой папки. Как я могу указать папку для PersistentContainer, чтобы она использовала старое хранилище?
Ответ №1:
Постоянные хранилища a NSPersistentContainer
указаны в его persistentStoreDescriptions
свойстве array. По умолчанию он содержит одно постоянное хранилище типа SQLite, поддерживаемое файлом в Application Support
папке контейнера вашего приложения.
Процедура изменения этого объясняется в разделе Обсуждения документации по этому свойству.
Путь к файлу этого хранилища указан в url
свойстве that NSPersistentStoreDescription
, которое является изменяемым. Поэтому вы должны установить url
свойство этого единственного NSPersistentStoreDescription
элемента в этом массиве на желаемый путь.