核心数据:一对多关系 - 没有保存细节
Posted
技术标签:
【中文标题】核心数据:一对多关系 - 没有保存细节【英文标题】:Core Data : 1 to many relation - no details saved 【发布时间】:2015-08-28 15:48:44 【问题描述】:我在 CoreData 中有一个关系,据说应该保存实体的详细信息。
这些天我基本上只是按照建议快速执行此操作。但似乎没有运气。至少我的数据应该在那里,但它们不在数据库中,也不在 res 变量中。参数项:[RBPMyChargesDetailModel] 存在于通话中。
@NSManaged var year:NSNumber
@NSManaged var limit:NSNumber
@NSManaged var paidOther:NSNumber
@NSManaged var paidOverLimit:NSNumber
@NSManaged var paidRBP:NSNumber
@NSManaged var chargesDetails:NSMutableSet
class func create(year:NSNumber, limit:NSNumber, paidOther:NSNumber, paidOverLimit:NSNumber, paidRBP:NSNumber, items:[RBPMyChargesDetailModel]?)
MagicalRecord.saveWithBlockAndWait((localContext : NSManagedObjectContext!) in
var res:RBPMyChargesModel = RBPMyChargesModel.createInContext(localContext) as! RBPMyChargesModel
res.year = year
res.limit = limit
res.paidOther = paidOther
res.paidOverLimit = paidOverLimit
res.paidRBP = paidRBP
if let it = items
res.chargesDetails.addObjectsFromArray(it)
NSLog("Details %@", res.chargesDetails)
)
我们将不胜感激,因为我显然做错了什么。 顺便说一句:我正在使用 MagicalRecords 来支持我的项目。
【问题讨论】:
“不走运”具体是什么意思? 我的意思是没有记录,因为费用详情已保存到数据库,但当我调用该函数时数据存在。 您是否对任何属性进行了验证?如果要求属性不为零,则不会保存任何数据。通用代码模板看起来不错,所以我不确定它可能是什么 【参考方案1】:在您的模型图像中,您以错误的方式获得了对多关系。应该是
Model <----->> Detail
不是
Model <<-----> Detail
【讨论】:
以上是关于核心数据:一对多关系 - 没有保存细节的主要内容,如果未能解决你的问题,请参考以下文章