iOS Swift 3 CoreData仅保存最新数据

iOS Swift 3 CoreData仅保存最新数据,ios,core-data,swift3,Ios,Core Data,Swift3,我试图将一些数据保存到核心数据中,但当我检索数据时,只能得到最后保存的元素 let fetchRequest: NSFetchRequest<Image> = Image.fetchRequest() if #available(iOS 10.0, *) { let handler = CoreDataHandler.sharedInstance.managedObjectContext() do { //go get the results

我试图将一些数据保存到核心数据中,但当我检索数据时,只能得到最后保存的元素

let fetchRequest: NSFetchRequest<Image> = Image.fetchRequest()
if #available(iOS 10.0, *) {

    let handler = CoreDataHandler.sharedInstance.managedObjectContext()

    do {
        //go get the results

        let add = NSEntityDescription.insertNewObject(forEntityName: "Image", into: handler) as! Image
        let homeData = TimeLineModel()

        homeData.image = urlString
        homeData.audio = ""
        homeData.text = ""
        self.homeDataModel.append(homeData)

        homeTableView.reloadData()
        // self.getLocationName()
        add.image_name = imageName
        add.date_taken = NSDate()
        add.image_path = urlString
        add.longitude = self.imageLat!
        add.latitude = self.imageLong!
        do {
            let searchResults = try handler.fetch(fetchRequest)
            print ("num of results = \(searchResults.count)")
            for trans in searchResults as [NSManagedObject] {
                print("\(trans.value(forKey: "image_name"))")
            }
        } catch {
            print("Error with request: \(error)")
        }

    }
    let fetchRequest:NSFetchRequest<Image> = Image.fetchRequest()
    do {
        let searchResults = try handler.fetch(fetchRequest)
        for trans in searchResults {
            print(trans.image_name!)
        }
        let result = try handler.fetch(fetchRequest)
        print(result)

    }
    catch {
    }

} else {
    // Fallback on earlier versions
}

这是我用来保存和检索数据的代码,我是开发和iOS开发的新手,所以请帮助我

插入项目后,是否在
managedObjectContext
(在您的代码
处理程序中
)上调用save?是的@JonRose我编辑了问题,请看一下……为什么要在
fetchRequest
中插入对象?在`let searchResults=try handler.fetch(fetchRequest)`defined?行中使用的变量
fetchRequest
在哪里?为易读性设置了格式这行应该做什么:
let add=NSEntityDescription.insertNewObject(forEntityName:“Image”,into:handler)as!图像
let managedObjectContext = self.managedObjectContext()
let imageInsert = NSEntityDescription.insertNewObject(forEntityName: "Image", into: managedObjectContext) as! Image
imageInsert.image_name = getImage(pickedImage: imageData)
imageInsert.date_taken = NSDate()

do {
    saveContext()
}