0
私は2つのエンティティを持っている:配列から各オブジェクトのfetchRequestカウントを実行する方法は?
Attendace:
import Foundation
import CoreData
extension Attendance {
@NSManaged var date: NSDate?
@NSManaged var id: NSNumber?
@NSManaged var id_consultant: String?
@NSManaged var id_store: NSNumber?
@NSManaged var name: String?
@NSManaged var status: String?
}
と製品:
import Foundation
import CoreData
extension Product {
@NSManaged var id: String?
@NSManaged var name: String?
@NSManaged var preco: String?
@NSManaged var attendance: Attendance?
}
私はすべての出席を取得し、中にあるどのように多くの製品をカウントするためにフェッチを実行する必要がありますよ出席者:
出席者をフェッチする方法はあります。出席者IDを持つ製品の数をどのように得ることができますか?その出席し、製品は1対多の関係を持っているので、あなたのデータモデルを設定していると仮定すると、
func fetchAttendances() {
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
let managedContext = appDelegate.managedObjectContext
let fetchRequest = NSFetchRequest(entityName: "Attendance")
let attendancePredicate = NSPredicate(format: "id_store == \(Int(Helper.userDefaults().objectForKey(ConstantHelper.kIdStore)! as! NSNumber))")
fetchRequest.predicate = attendancePredicate
do {
let results = try managedContext.executeFetchRequest(fetchRequest)
myAttendances = results as! [NSManagedObject]
self.collectionAttendances.reloadData()
} catch let error as NSError {
print("Could not fetch \(error), \(error.userInfo)")
}
}
逆の関係はオプションですか? – vadian
出席コードから製品への一対多の関係を使用して、フェッチコードを書く必要がないので、セットのサイズを確認するだけです。 –