0
現在、コアデータエラーが発生しています。私は何が起こっているのか分からないようです。ここにコードがあります。CoreData:error:NSManagedObjectクラス 'Video'で指定された初期化子を呼び出すことに失敗しました
import UIKit
import Alamofire
protocol FetchResultsControllerDelegate {
func dataReady()
}
class PNSClient: NSObject {
var pnsVideos = [Video]()
var delegate: FetchResultsControllerDelegate?
func getFeedVideos() {
// Fetch the videos dynamically through the YouTube Data API
Alamofire.request(.GET, Constants.YouTubeURL, parameters: [Parameters.Part: Parameters.Snippet, Parameters.PlaylistId: Constants.UPLOADS_PLAYLIST_ID, Parameters.Key: Constants.API_KEY, Parameters.MaxResults : 50], encoding: .URL, headers: nil)
.validate()
.responseJSON { (response) -> Void in
switch response.result {
case .Success(let JSON):
print("Success with JSON: \(JSON)")
let response = JSON as! NSDictionary
let userID = response.objectForKey("items")
print(userID)
case .Failure(let error):
print("Request failed with error: \(error)")
}
if let JSON = response.result.value {
var arrayOfPNSVideos = [Video]()
for video in JSON["items"] as! NSArray {
print(video)
let videoObj = Video()
videoObj.videoId = video.valueForKeyPath("snippet.resourceId.videoId") as? String
videoObj.videoTitle = video.valueForKeyPath("snippet.title") as? String
videoObj.videoDescription = video.valueForKeyPath("snippet.description") as? String
if let highUrl = video.valueForKeyPath("snippet.thumbnails.high.url") as? String {
videoObj.videoThumbnailUrl = highUrl
arrayOfPNSVideos.append(videoObj)
}
self.pnsVideos = arrayOfPNSVideos
if self.delegate != nil {
self.delegate?.dataReady()
}
}
}
}
レポを見ると役立つ場合:www.github.com/pbellot77/pop-nutshell
問題はどの回線で発生しますか? – Jim
何かが変更されない限り、 'NSManagedObject'を' Video() 'でインスタンス化することはできません。それは 'NSManagedObjectContext'を使用して挿入する必要があります。 – Bek
PNSClientの51行目でエラーが発生します。再利用のためにオブジェクトをコアデータに直接格納しようとしています。 –