我正在学习如何使用 PARSE 来存储用户的信息。基本上,我正在制作一个测试应用,用户可以在其中添加值(重量),日期和评论。我将此信息上传到 parse.com ,我希望能够从 PARSE 中检索所有信息,并在每次用户登录时将其保存到核心数据中。
当我下载它时,我为每个元素创建一个结构,然后将其附加到数组中。我正在考虑直接保存每个元素:
这是我下载和创建结构数组的代码:
func queryDownload (usuario : PFUser) {
do {
let query = PFQuery(className: "Test")
query.whereKey("user", equalTo: user)
let objects = try query.findObjects() as [PFObject]
self.dataArray = objects.map { MyData(wheigt: $0["wValue"] as! Int, date: $0["date"] as! Date, info: $0["info"] as! String) }
self.dataArrayOrdered = self.dataArray.sorted(by: { $0.date.compare($1.date) == .orderedAscending})
print(self.dataArrayOrdered)
} catch {
print("ERROR", error)
}
}
我试图在coreData中存储它:
let elements = dataArrayOrdered.count
for i in 0...(elements - 1) {
let newData = NSEntityDescription.insertNewObject(forEntityName: "", into: context)
newData.setValue(dataArrayOrdered[i].wheigt, forKey: "wValue")
newData.setValue(user, forKey: "user")
newData.setValue(dataArrayOrdered[i].date, forKey: "date")
newData.setValue(dataArrayOrdered[i].info, forKey: "comment")
}
但我的老师告诉我,这不是一个好主意,我应该考虑我的CoreData数据结构的其他选项,但我不能提出任何其他想法。你对此有何看法?我一直在想,也许问题可能是我稍后检索信息并尝试创建结构数组,但我不确定,有没有更好的方法将coreData与这种数据一起使用?