// 以降これは同じ var user =SobjectiveRecord<User>.create() var user =Users.create()
基本、全ての処理はperformBlock:内で行う。
1 2 3 4 5 6 7
NSManagedObjectContext.defaultContext.performBlock { // your code here } var moc =NSManagedObjectContext.defaultContext.createChildContext() moc.performBlock { // your code here }
NSManagedObjectContext.defaultContext.performBlock { var t =Tweets.create() t.text ="I am here" t.save() t =Tweets.create(attributes: ["text" : "hello!!", "lang" : "en"]) t.delete() }
NSManagedObjectContext.defaultContext.performBlock { var tweets =Tweets.all() var tweetsInEnglish =Tweets.find(condition: "lang == 'en'") var hmhv =Users.first(condition: "screenName == 'hmhv'") var englishMen =Users.find(condition: ["lang" : "en", "timeZone" : "London"]) var predicate =NSPredicate(format: "friendsCount > 100") var manyFriendsUsers =Users.find(condition: predicate) }
Order and Limit
1 2 3 4 5 6 7 8 9 10 11 12 13
NSManagedObjectContext.defaultContext.performBlock { var sortedUsers =Users.all(order: "name") var allUsers =Users.all(order: "screenName ASC, name DESC") // or var allUsers2 =Users.all(order: "screenName A, name D") // or var allUsers3 =Users.all(order: "screenName, name d") var manyFriendsUsers =Users.find(condition: "friendsCount > 100", order: "screenName DESC") var fiveEnglishUsers =Users.find(condition: "lang == 'en'", order: "screenName ASC", fetchLimit: 5) }
Aggregation
1 2 3 4 5
NSManagedObjectContext.defaultContext.performBlock { var allUserCount =Users.count() var englishUserCount =Users.count(condition: "lang == 'en'") }