SwiftData нет такой ошибки таблицы для одной из моделейIOS

Программируем под IOS
Ответить
Anonymous
 SwiftData нет такой ошибки таблицы для одной из моделей

Сообщение Anonymous »

У меня есть 2 модели в моем приложении, Fist (Modela) работает нормально - данные постояны, независимо от того, сколько раз я перезагружаю приложение на симуляторе, но второй (ModelB) иногда теряет данные ИТ, и я вижу ошибки в том, что такая таблица, найденная в отладчике Xcode. Я не понимаю, в чем разница между ними. < /P>
@Model
final class ModelA: Identifiable {
@Attribute(.unique) var id: String
var name: String

init(id: String = UUID().uuidString, name: String) {
self.id = id
self.name = name
}
}
< /code>
@Model
final class ModelB: Identifiable {
@Attribute(.unique) var id: String
var param: String

init(id: String = UUID().uuidString, param: String) {
self.id = id
self.param = param
}
}
< /code>
@main
struct MyApp: App {
var sharedModelContainer: ModelContainer = {
let schema = Schema([
ModelA.self,
ModelB.self
])
let modelConfiguration = ModelConfiguration(schema: schema, isStoredInMemoryOnly: false)

do {
return try ModelContainer(for: schema, configurations: [modelConfiguration])
} catch {
fatalError("Could not create ModelContainer: \(error)")
}
}()

var body: some Scene {
WindowGroup {
TabView { /* === views === */ }
}.modelContainer(sharedModelContainer)
}

< /code>
upd
I wasn't able to find the root cause and fix it (even though it is data fetch issue I believe it relates to how view hierarchy is structured), but I found workaround instead - I made second model a struct (Identifiable, Codable, Hashable)

Подробнее здесь: https://stackoverflow.com/questions/787 ... -of-models
Ответить

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

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

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

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

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