我正在使用Realm开发iOS应用程序,并且有一个对象MedicationObject,其中包含有关正在使用的Medication的信息。然后,它有一对多的关系类MedicationRecording,用于在服药时间内存储信息。
import Foundation
import RealmSwift
class MedicationObject : Object {
//This model requires a Primary Key
@objc dynamic var id = 0
override static func primaryKey() -> String? {
return "id"
}
@objc dynamic var medicationName : String = ""
//stores the refrences to medication recoridngs
var messurements = List<MedicationRecording>()
public func addNewMesurment() {
print(self)
let medicationRecording = MedicationRecording()
medicationRecording.medicationTaken = self
medicationRecording.timeTaken = Date()// this saves the time to now
medicationRecording.medicationTaken = self
RealmAccess().updateMedicationObject(medicationObject: self, medicationRecord: medicationRecording) //this should work
}
}
这是我的MedicationRecording:
import Foundation
import RealmSwift
class MedicationRecording : Object {
@objc dynamic var medicationTaken : MedicationObject? = MedicationObject()
@objc dynamic var timeTaken : Date = Date()
@objc dynamic var id = 0
override static func primaryKey() -> String? {
return "id"
}
}
这就是我打算将数据保存到
的方法 func updateMedicationObject(medicationObject : MedicationObject, medicationRecord : MedicationRecording) {
let realm = try! getRealmAccess()
let mediObject = MedicationObject()
mediObject.medicationName = medicationObject.medicationName
do {
try! realm.write {
realm.add(medicationRecord, update: true)
medicationObject.messurements.append(medicationRecord)
}
}
}
在我保存数据的那一刻,它正在丢失MedicationObject中的所有信息,只保存最后的数据。 非常感谢任何帮助 谢谢