как сделать детали maser в core-data с помощью swift - PullRequest
0 голосов
/ 04 апреля 2020

есть две организации Entity Care и Марк, я хочу получить записи от Марка по идентификатору Care. Структура двух объектов: Структура Care

Структура Марка

создайте подкласс Care вручную, в то время как я получаю 0, когда пытаюсь прочитать wrappedMarks в сообщении печати функции fun init View: careid: 841FF99E-C714-4F76-A5C4-DE09BE892AB3, количество: 0 для кода чтения записей помечается как care.

 import SwiftUI
    import Charts
    import CoreData

struct CareDetails: View {
@Environment(\.managedObjectContext) var context


let timeSpan=["日","周","月","年"]

let care:Care




// @FetchRequest var marks:FetchedResults<Mark>
    @State private var timeSpanIndex = 0
    @State private var showSheet  = false
    private var  sessions:[Int]=[]
    private var  accuracy:[Double]=[]
    init(care:Care){
        self.care=care
        print("careid:\(self.care.id!),count:\(self.care.wrappedMarks.count)")
    }
}

подкласс Care

import Foundation
import CoreData

extension Care {

@nonobjc public class func fetchRequest() -> NSFetchRequest<Care> {
    return NSFetchRequest<Care>(entityName: "Care")
}

@NSManaged public var birthday: Date?
@NSManaged public var creator_id: String?
@NSManaged public var id: String?
@NSManaged public var name: String?
@NSManaged public var sex: String?
@NSManaged public var subject: String?
@NSManaged public var type: String?
@NSManaged public var unit: String?
@NSManaged public var marks: NSSet?
public var wrappedMarks:[Mark]{
    guard let m = marks,let wrappedMarks = Array(m) as? [Mark]
        else{ return []}
    return wrappedMarks

}

}

// MARK: Generated accessors for marks
extension Care {

@objc(addMarksObject:)
@NSManaged public func addToMarks(_ value: Mark)

@objc(removeMarksObject:)
@NSManaged public func removeFromMarks(_ value: Mark)

@objc(addMarks:)
@NSManaged public func addToMarks(_ values: NSSet)

@objc(removeMarks:)
@NSManaged public func removeFromMarks(_ values: NSSet)

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...