2016-11-04 4 views
3

私はServerから値を取り出してCoredataに保存しています。サーバからデータを取得してcoredataに保存すると、値が保存されていることがわかります私のすべてのデータがCoredataに保存されていません

[{ 
    adName = Britannia; 
    adType = Video; 
    addescription = "Choco Muffills come with thick chocolate filling that will take you by surprise."; 
    clientImage = "http://api.weoneapp.com:8595/1464528609370.png"; 
    clientName = Britannia; 
    endDate = "Just now"; 
    entryId = 1478230186228; 
    likeFlag = 0; 
    mainImage = ""; 
    newAdvertisement = 1; 
    noOfCount = 1367; 
    noOfLike = 2783; 
    seenAdvertisement = 0; 
    smilURL = "http://52.66.101.222:1935/vod/_definst_/1478230186228/smil:1478230186228.smil/playlist.m3u8"; 
    sortDate = "2016-11-03T19:27:00.000Z"; 
    startDate = "2016-11-03T19:27:00.000Z"; 
    subTitle = "Britannia Cake Muffills"; 
    thumbNail = "http://52.66.101.222:8595/video/1478230186228/1478230186228_thumbnail.png"; 
    videoDownloadUrl = "http://52.66.101.222:8595/video/1478230186228/1478230186228_source.mp4"; 
}, { 
    adName = "Kwality Walls"; 
    adType = Video; 
    addescription = "Paddle Pop Yummy Delicious Dessert - A delicious, colourful and yummy dessert ... Walls India \U00b7 Kulfeez from Kwality Walls India \U00b7"; 
    clientImage = "http://api.weoneapp.com:8595/1464524885184.jpg"; 
    clientName = "Kwality Walls"; 
    endDate = "Just now"; 
    entryId = 1478230623594; 
    likeFlag = 0; 
    mainImage = ""; 
    newAdvertisement = 1; 
    noOfCount = 1281; 
    noOfLike = 2618; 
    seenAdvertisement = 0; 
    smilURL = "http://52.66.101.222:1935/vod/_definst_/1478230623594/smil:1478230623594.smil/playlist.m3u8"; 
    sortDate = "2016-11-03T18:36:00.000Z"; 
    startDate = "2016-11-03T18:36:00.000Z"; 
    subTitle = "Paddle Pop Jiggly Jelly"; 
    thumbNail = "http://52.66.101.222:8595/video/1478230623594/1478230623594_thumbnail.png"; 
    videoDownloadUrl = "http://52.66.101.222:8595/video/1478230623594/1478230623594_source.mp4"; 
}, { 
    adName = "Cadbury Dairy Milk"; 
    adType = Video; 
    addescription = "Your favourite chocolate is now more chocolatey."; 
    clientImage = "http://api.weoneapp.com:8595/1464017173884.jpg"; 
    clientName = Cadbury; 
    endDate = "Just now"; 
    entryId = 1478230473291; 
    likeFlag = 0; 
    mainImage = ""; 
    newAdvertisement = 0; 
    noOfCount = 1310; 
    noOfLike = 2600; 
    seenAdvertisement = 1; 
    smilURL = "http://52.66.101.222:1935/vod/_definst_/1478230473291/smil:1478230473291.smil/playlist.m3u8"; 
    sortDate = "2016-11-03T18:32:00.000Z"; 
    startDate = "2016-11-03T18:32:00.000Z"; 
    subTitle = "Cadbury Dairy Milk"; 
    thumbNail = "http://52.66.101.222:8595/video/1478230473291/1478230473291_thumbnail.png"; 
    videoDownloadUrl = "http://52.66.101.222:8595/video/1478230473291/1478230473291_source.mp4"; 
}] 

今、私はこの場所にある私の.sqliteフォルダに行くとき:/ユーザ/ Johnn /ライブラリのすべての値.....

これらは、保存されている私のデータであり、 /Developer/CoreSimulator/Devices/0DF66BFE-6076-45E9-8325-D61F1C738DFA/data/Containers/Data/Application/DC3F7B17-1172-4AE3-BC3B-217624C21AA5/Documents/AppCoreData.sqlite

と私が見つけた私のテーブルに行く>この.sqliteファイルを開く:2つだけの値がエントリの私の最後の値を格納している enter image description here

は空です。私は配列の私の最後の値がデータベースに格納されて取得されていない理由を、この、背後にある理由だか分からない

...

私はこのような値を格納しています:

class func createInManagedObjectContext(nameOfAdvert: String, thumbnail: String, fileName: String, videoDownloadUrl: String, subTitle: String, adType: String, mainImage: String, noOfLike: NSNumber, entryId: String, likeFlag: Bool, startDate: String, endDate: String, noOfCount: NSNumber ,clientName: String, clientImage: String, adDesc: String, sortDate: String, newAdvertisement: Bool, seenAdvertisement: Bool) -> Tube { 

    let managedObjectContext = DataAccess.shared.managedObjectContext 

    let newItems = NSEntityDescription.insertNewObjectForEntityForName("Tube", inManagedObjectContext: managedObjectContext) as! Tube 

    do { 
     try managedObjectContext.save() 

     newItems.adName = nameOfAdvert 
     newItems.thumbNail = thumbnail 
     newItems.smilURL = fileName 
     newItems.videoDownloadUrl = videoDownloadUrl 
     newItems.subTitle = subTitle 
     newItems.adType = adType 
     newItems.mainImage = mainImage 
     newItems.noOfLike = noOfLike 
     newItems.entryId = entryId 
     newItems.likeFlag = likeFlag 
     newItems.startDate = startDate 
     newItems.endDate = endDate 
     newItems.noOfCount = noOfCount 
     newItems.clientImage = clientImage 
     newItems.clientName = clientName 
     newItems.addescription = adDesc 
     newItems.sortDate = sortDate 
     newItems.newAdvertisement = newAdvertisement 
     newItems.seenAdvertisement = seenAdvertisement 

    } catch let error as NSError { 
     print("Could not save \(error), \(error.userInfo)") 
    } 
    print("-----------------------------") 
    print(newItems) 
    return newItems 
} 

Iすべてのデータがコアデータに保存されない理由を知りません。どんな助けもありがとう。事前

答えて

4

おかげで、このコードを入力してください: - >

書き込みtry managedObjectContext.save()あなたがデータを挿入した後。 ..私はmistake.Iがそれを取得する前にデータを保存して、この失態を作っていた

class func createInManagedObjectContext(nameOfAdvert: String, thumbnail: String, fileName: String, videoDownloadUrl: String, subTitle: String, adType: String, mainImage: String, noOfLike: NSNumber, entryId: String, likeFlag: Bool, startDate: String, endDate: String, noOfCount: NSNumber ,clientName: String, clientImage: String, adDesc: String, sortDate: String, newAdvertisement: Bool, seenAdvertisement: Bool) -> Tube { 

let managedObjectContext = DataAccess.shared.managedObjectContext 

let newItems = NSEntityDescription.insertNewObjectForEntityForName("Tube", inManagedObjectContext: managedObjectContext) as! Tube 

    newItems.adName = nameOfAdvert 
    newItems.thumbNail = thumbnail 
    newItems.smilURL = fileName 
    newItems.videoDownloadUrl = videoDownloadUrl 
    newItems.subTitle = subTitle 
    newItems.adType = adType 
    newItems.mainImage = mainImage 
    newItems.noOfLike = noOfLike 
    newItems.entryId = entryId 
    newItems.likeFlag = likeFlag 
    newItems.startDate = startDate 
    newItems.endDate = endDate 
    newItems.noOfCount = noOfCount 
    newItems.clientImage = clientImage 
    newItems.clientName = clientName 
    newItems.addescription = adDesc 
    newItems.sortDate = sortDate 
    newItems.newAdvertisement = newAdvertisement 
    newItems.seenAdvertisement = seenAdvertisement 

do { 
    try managedObjectContext.save() 
} catch let error as NSError { 
    print("Could not save \(error), \(error.userInfo)") 
} 
print("-----------------------------") 
print(newItems) 
return newItems 

}

+0

おかげで...おかげでたくさんのuが私の一日保存されました... – Aditya

関連する問題