2013-03-27 1 views
2

mogenerator을 설치하여 프로젝트에 Managed Objects을 생성했습니다.CoreData, Magical Record 및 Mogenerator

이전에 mogenerator없이 일하고있었습니다.

나는 또한 MagicalRecord을 사용하고 있습니다.

나는 엔티티 Message을하고 난 ... 라인을 실행

return [Message countOfEntitiesWithPredicate:[NSPredicate predicateWithFormat:@"user == 123"]]; 

을하려하지만이 회선에 자동 unrecognized selector 오류를 받고 있어요.

I가 그것을 변경하는 경우

...

return [_Message countOfEntitiesWithPredicate:[NSPredicate predicateWithFormat:@"user == 123"]]; 

그것은 잘 작동합니다. 하지만 어리석은 일은 나중에이 두 함수를 두 줄씩 다른 술어로 처리하고 수정없이 잘 작동한다는 것입니다. 나는 술어없이 시도했지만 동일한 결과를 얻는다. 난 그냥이 줄을 주석 및 퍼팅 시도

편집 ...

return 0; 

는 지금은이 라인의 두 번째 사용에 대한 인식 할 수없는 선택기를 얻을. 그것은 거의 CoreData를 _Message에 전화하여 "초기화"해야합니까?

아이디어가 있으십니까?

편집 2

실행하려고 할 때 나는이납니다 ...

[Message createEntity]; 

같은 인식 할 수없는 선택. 모든 핵심 데이터에이 작업을 수행하는 경우 이는 매우 성가신 일입니다.

+0

.pch 파일에'#define MR_SHORTHAND'와'#import "CoreData + MagicalRecord.h"'를 포함 시켰습니까? – Adam

+0

@ Adam 예, 전 Mogenerator를 사용하여 ManagedObject 하위 클래스를 만들기 전에 Magical Record를 사용했습니다. – Fogmeister

답변

0

아이폰 시뮬레이터에서 AppCode를 사용하여 프로젝트를 실행했을 때 Message라는 클래스가 두 번 구현되었다는 이상한 디버그 메시지를 보았습니다.

다른 프레임 워크에서 구현되었거나 사용 중이어야합니다.

코어 데이터 엔티티의 이름을 좀 더 독특한 것으로 변경했을 때 제대로 작동했습니다.

나는이 모든 TBH에서 컴파일 된 놀랍습니다.

+0

동일한 버그가 있습니다. 그 이후로 다른 설명을 찾았습니까? – Colas

+0

아니요, 그 이후로 아무것도 찾지 못했습니다. 하지만 난 그냥 메시지를 사용하여 피하고 그것을 잘 작동하는 것 같습니다. – Fogmeister

+0

내 문제는 내가 그것을 사용하기 전에 MagicalRecord를 초기화하지 않는다는 것입니다! NSPersistentDocument 클래스 (osx 클래스)를 사용하고 있습니다. 너? – Colas

1

나는 비슷한 문제가있었습니다. Core Data는 "Message"및 "Connection"이라는 엔티티를 좋아하지 않는다는 것을 깨달았습니다. 이들을 접두어로 붙이면 내 문제가 해결되었습니다.