This domain may be for sale!
NTYPopulatorというiOS/OS X用のライブラリを書いた。これはCore Data向けに初期データを用意する。 インストールCocoaPodsに公開したので、pod "NTYPopulator"からインストールできる。 使い方最も簡単な使い方はAppDelegate.mに一行追加するだけで良い。 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { [[NTYPopulator new] run]; return YES; } この一行はリソースバンドル内にあるseeds/*.csvを探し出し、ファイル名と同名のEntityに初期データを追加する。例えば、seeds/user.csvというファ
モデルの修正 CoreDataのマイグレーションを試してみた。通常モデルに修正を加えると、直前に作成したSQLiteDBは使えず実行時エラーが出る。この場合、SQLiteDBを一旦削除する必要がある。当然データの引き継ぎはできない。 エラーログ: [16769:a0f] Error Domain=NSCocoaErrorDomain Code=134100 UserInfo=0x116760 "The managed object model version used to open the persistent store is incompatible with the one that was used to create the persistent store."[16769:a0f] This NSPersistentStoreCoordinator has
Core Data に格納されたデータの中から特定の属性値が最大値を取得したい。 SQL だと SELECT MAX(timeStamp) FROM Book;と、たった一行で簡単に取得できるが Core Data ではどうか? 前提 こんなエンティティがあったとする。 この属性値 timeStamp の最大値(すなわち最も最近の日時)を取得するメソッドを用意する。またこのメソッドは絞り込みの条件として Author(NSManagedObjectのサブクラス)を渡すことができる。 コード見本 こんな感じ。 - (Book*)lastTimeStampOfAuthor:(Author*)author { NSManagedObjectContext* moc = self.managedObjectContext; NSFetchRequest* request = [[NSFetchRe
@dynamicはアクセサ作成をするわけではないので厳密に言うとタイトルは違うけど. @synthesizeと@dynamicの違いは基本的なポイントだけど,きちんと理解して使い分けないと思わぬところでハマる. CoreDataを使うためにNSManagedObjectを継承した専用クラスを作ったとき,属性へのアクセサを作るためにヘッダに@property XXX;,*.mに@dynamic XXX;と書く.@dynamicにするのはNSManagedObject側で各属性のセッタ/ゲッタを作ってくれるから. このとき@dynamicではなく@synthesizeとしてしまうとCoreData用のアクセサ(-setValue:forKey:)が使われず,普通のアクセサが作られる. つまりNSManagedObjectを変更しているつもりが変更されず,CoreDataに編集データが保存されな
Rails の Active Record ライクな APIが提供されている。以下 READMEからの転載。 NSArray *people = [Person findAll]; NSArray *peopleSorted = [Person findAllSortedByProperty:@"LastName" ascending:YES]; Person *person = [Person findFirstByAttribute:@"FirstName" withValue:@"Forrest"]; フェッチ 結果をブロックで処理できる。 [[Person findAll] each:^(Person* p) { NSLog(@"Found %@",p.name); }];NSArray* fatherArray = [[Person findAll] map:^id(Person
Atmosphere client library waits for changes and automatically pushes them to the server. You only need to say: Atmosphere connects to your server platform. Special part of the framework, called source, specifies how and when will it grab data. You can add your own source to make Atmosphere work with any backend you’re using, or you can use a built-in source to connect to common databases, like Mon
INDEX>Foundation> NSDictionary>-enumerateKeysAndObjectsUsingBlock: ブロック構文を使用して辞書から検索します 編集時バージョン OS X 10.8,iOS 6.1 apple(mac) apple(iOS) -(void)enumerateKeysAndObjectsUsingBlock:(void (^)(id key, id obj, BOOL *stop))block 解説 ブロック構文を使用して辞書から検索します。 返り値 ( void ) なし 引数 ( void (^)(id key, id obj, BOOL *stop) )block ブロック フレームワーク Foundation クラス NSDictionary Instance Methods 使用可能 10.6 iOS4.0 参照 例文 #import
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く