I am trying to learn swiftdata, and I am struggling with relationships, in SQL it is very straightforward, but I don’t understand why the relationship I have set up works, it seems to but why?
These are the two data models that I have set up for a one to may relartionship:
@Model
final class meals {
@Relationship(deleteRule: .cascade, inverse: readings.whichMeal) var whichMeal: [readings]
var mealDesc: String
init(whichMeal: [readings], mealDesc: String){
self.whichMeal = whichMeal
self.mealDesc = mealDesc
}
}
@Model
final class readings {
var readDate: Date
var whichMeal: meals
var comment: String
var glucoseReading: Float
var ketoneReading: Float?
init(readDate: Date,
whichMeal: meals,
comment: String,
glucoseReading: Float,
ketoneReading: Float
){
self.readDate = readDate
self.whichMeal = whichMeal
self.comment = comment
self.glucoseReading = glucoseReading
self.ketoneReading = ketoneReading
}
}
My question is how does SwiftData know that “whichMeal” in both models is an integer?