Я получаю спорадические сбои с момента обновления Swift ModelContainerIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Я получаю спорадические сбои с момента обновления Swift ModelContainer

Сообщение Anonymous »

У меня есть несколько моделей в моем приложении: < /p>

Код: Выделить всё

[SDPlanBrief.self, SDAirport.self, SDChart.self, SDIndividualRunwayAirport.self, SDLocationBrief.self]

Код: Выделить всё

SDLocationBrief
имеет @relationship с sdchart
Когда я выйдет в эфир с моим приложением, у меня не было схемы версии, но быстро пришлось изменить это, так как мне нужно было добавить элементы в мой @model s.
Первая версий Schema, которую я сделал, включил только модель, которую я сделал.

Код: Выделить всё

static var models: [any PersistentModel.Type] {
[SDPlanBrief.self]
}
< /code>
Я внес нулевые изменения в моем контейнере модели и все время, и это работало нормально, это то, что я использовал: < /p>
.modelContainer(for: [SDAirport.self, SDIndividualRunwayAirport.self, SDLocationBrief.self, SDChart.self, SDPlanBrief.self])

Я видел, что я действительно должен включить все мои @model s в схему версии:

Код: Выделить всё

static var models: [any PersistentModel.Type] {
[SDPlanBrief.self, SDAirport.self, SDChart.self, SDIndividualRunwayAirport.self, SDLocationBrief.self]
}
, где я также сложил все мои классы @model . После этого я изменил свою модель Container , чтобы выглядеть так:

Код: Выделить всё

actor ModelContainerActor {

@MainActor
static func container() -> ModelContainer {
let schema = Schema(
versionedSchema: AllSwiftDataSchemaV3.self
)
let configuration = ModelConfiguration()
let container = try! ModelContainer(
for: schema,
migrationPlan: PlanBriefMigrationPlan.self,
configurations: configuration
)
return container
}
}
< /code>
И я передаю так: < /p>
.modelContainer(ModelContainerActor.container())
< /code>
Каждый раз, когда я сейчас запускаю приложение, я получаю это сообщение несколько раз в ряду: < /p>
CoreData: error: Attempting to retrieve an NSManagedObjectModel version checksum while the model is still editable. This may result in an unstable verison checksum. Add model to NSPersistentStoreCoordinator and try again.
i typealias Все эти модели тоже для самой последней версии V3:

Код: Выделить всё

typealias SDPlanBrief = AllSwiftDataSchemaV3.SDPlanBrief
Если я переодеваюсь в .modelcontainer (для: [sdairport. self, sdindividualRunwayairport.self, sdlocationbrief.self, sdchart. self, sdplanbrief. self]) и запустить приложение, я не получаю эти сообщения. Определенные представления загружаются (я предполагаю при доступе к объектам @Query . Кажется, это больше, когда представление загружается быстро, например, при удалении представления подписки, где данные, возможно, не могли загружать? Я не очень хорошо изучаю SwiftData.

Подробнее здесь: https://stackoverflow.com/questions/797 ... lcontainer
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

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

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»