MagicRecordのインストール
MagicalRecordの導入
下記を参考に導入
http://tech-gym.com/2012/01/objective-c/612.html
「Mogenerator error: skipping entity MyObjectName (NSManagedObject) because it doesn't use a custom subclass.」のエラーが発生
エンティティにclass名をつけてなかったことが原因のよう。
・参照
MagicalRecordの使い方のソースだとどうもうまくいかないため、ソースは下記を参照。
http://www.atmarkit.co.jp/ait/articles/1307/10/news017_2.html
「ARC forbids Objective-C objects in structs or unions」のエラーが発生
Mogenertorのコマンドの最後に、下記を追加して、ファイルをコピーし直す
--template-var arc=true
ちなみに下記サイトを参照
https://github.com/rentzsch/mogenerator/issues/106
No known class method for selector 'swizzleShorthandMethods' のエラーが発生して落ちる。
【原因】
#define MR_SHORTHAND 1
は
#import "CoreData+MagicalRecord.h"
より前に書く必要が有るらしい
【解決策】
#ifdef __OBJC__
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
// DB系設定の追加
#import "CoreData+MagicalRecord.h"
#define MR_SHORTHAND 1
#endif
#ifdef __OBJC__
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
// DB系設定の追加
#define MR_SHORTHAND 1
#import "CoreData+MagicalRecord.h"
#endif
書いてあるとおりなのになんでやねん。
今度は「_OBJC_CLASS_$_ファイル名, referenced from」というエラーが発生。
下記サイトを参照
http://d.hatena.ne.jp/bi_na/20111121/1321855527
ふむふむ。ファイルとXcodeの紐付けができてないとな。
コマンドたたいてできた<エンティティ名>.mと_<エンティティ名>.mのファイルにTarget Membershipのチェックがついていないことに気づく。
「Incomplete implementation」のWarningが発生。というかずっと発生してた
下記を参照
http://blog.casualappteam.com/blog-entry-43.html
なるほど、hにいらないやつがあるのね。
コメントアウトして解決
ここまでで導入完了しました。
メモに近いですが、共有まで!