I'm getting error when I try to delete my kayit
item. And the line causing the error is given below. When I removed this line everything is OK. I can delete my kayit
item.
@Environment(\.modelContext) private var modelContext
@Environment(\.dismiss) private var dismiss
@Bindable var kayit: Kayit
@FocusState private var focusedField: Field?
var body: some View {
Form {
Section {
Text(kayit.ozellikleri)
Text(kayit.girisKaydi.baglanmaNedeni) // This line gives error
}
}
.navigationTitle("Edit Registery")
.toolbar {
ToolbarItem(placement: .topBarTrailing) {
Button {
modelContext.delete(kayit)
try? modelContext.save()
dismiss()
} label: {
Image(systemName: "trash")
.foregroundStyle(.red)
}
}
}
}
When I use giriskaydi
in anywhere it gives error. When I remove I can delete my item.
This is my model:
import Foundation
import SwiftData
@Model
class Kayit {
var aktifKayit = true
var plaka: String
var marka: String
var model: String
var ozellikleri: String
var kategori: Kategori
var girisKaydi: GirisKaydi
var cikisKaydi: CikisKaydi
init(aktifKayit: Bool = true, plaka: String, marka: String, model: String, ozellikleri: String, kategori: Kategori, girisKaydi: GirisKaydi, cikisKaydi: CikisKaydi) {
self.aktifKayit = aktifKayit
self.plaka = plaka
self.marka = marka
self.model = model
self.ozellikleri = ozellikleri
self.kategori = kategori
self.girisKaydi = girisKaydi
self.cikisKaydi = cikisKaydi
}
}
@Model
class GirisKaydi {
var baglayanKurum: String
var baglanmaNedeni: String
var girisTarihi: Date
var personel: String
var cekiciUcreti: Double
init(baglayanKurum: String, baglanmaNedeni: String, girisTarihi: Date, personel: String, cekiciUcreti: Double) {
self.baglayanKurum = baglayanKurum
self.baglanmaNedeni = baglanmaNedeni
self.girisTarihi = girisTarihi
self.personel = personel
self.cekiciUcreti = cekiciUcreti
}
}
@Model
class CikisKaydi {
var teslimAd: String
var teslimSoyad: String
var adres: String
var telefon: String
var dayanak: String
var cikisTarihi: Date
var aciklama: String
init(teslimAd: String, teslimSoyad: String, adres: String, telefon: String, dayanak: String, cikisTarihi: Date, aciklama: String) {
self.teslimAd = teslimAd
self.teslimSoyad = teslimSoyad
self.adres = adres
self.telefon = telefon
self.dayanak = dayanak
self.cikisTarihi = cikisTarihi
self.aciklama = aciklama
}
}
And the error:
@Model
class Kayit {
var aktifKayit = true
var plaka: String
var marka: String
var model: String
var ozellikleri: String
var kategori: Kategori
var girisKaydi: GirisKaydi
{
@storageRestrictions(accesses: _$backingData, initializes: _girisKaydi)
init(initialValue) {
_$backingData.setValue(forKey: \.girisKaydi, to: initialValue)
_girisKaydi = _SwiftDataNoType()
}
get {
_$observationRegistrar.access(self, keyPath: \.girisKaydi)
return self.getValue(forKey: \.girisKaydi) // Thread 1: EXC_BREAKPOINT (code=1, subcode=0x1cb45f898)
}
set {
_$observationRegistrar.withMutation(of: self, keyPath: \.girisKaydi) {
self.setValue(forKey: \.girisKaydi, to: newValue)
}
}
}
var cikisKaydi: CikisKaydi
init(aktifKayit: Bool = true, plaka: String, marka: String, model: String, ozellikleri: String, kategori: Kategori, girisKaydi: GirisKaydi, cikisKaydi: CikisKaydi) {
self.aktifKayit = aktifKayit
self.plaka = plaka
self.marka = marka
self.model = model
self.ozellikleri = ozellikleri
self.kategori = kategori
self.girisKaydi = girisKaydi
self.cikisKaydi = cikisKaydi
}
And is says CoreData: warning: Warning: Dropping Transactions prior to 52 for Persistent History
in console. Thank you so much.