2012-03-16 2 views
1

RestKit을 사용하여 MVC를 가능한 한 가깝게 따라가는 앱을 만들려고합니다. 목표는 [[RKObjectManager sharedManager] loadObjectsAtResourcePath:@"/object" delegate:self]을 사용하여 내 개체를로드 할 수 있도록 RKObjectMappingRKObjectManager을 통합하는 것입니다. 나는 또한 대리자를 도입 MVC RestKit을 사용하는 앱을위한 디자인

Objects 
- MYBaseObject : NSObject 
- MYObjectA : MYBaseObject 
- MyObjectB : MYBaseObject 
... 
ObjectControllers 
- MYBaseObjectController : NSObject 
- MYObjectAController : MYBaseObjectController 
- MYObjectBController : MYBaseObjectController 
... 
ViewControllers 
- MYBaseViewController : UIViewController 
- MYViewController1 : MYBaseViewController 
... 

이 (비동기 요청 등) 위임을 포함 할 수있다 다른 것들에 대한 어댑터/래퍼 역할을 MYBaseObjectControllerDelegate라고 같이 내 현재 설계에서

, 나는 다음과 같은이 나중에 내가 RestKit을 사용하지 않기로 결정한 경우에 대비하여. 사용

self.arrayOfMYObject = [MYObjectA allObjectsWithDelegate:self]; 

나는 그러나, 일을 그런 종류의 물건을 얻을 수있는 방법을 알아낼 수 없습니다

1) 이상적으로, 나는 MYViewController에서 다음을 수행 할 수 있도록하고 싶습니다 대표단. 문제는 내가 어떻게 든 응답 값을 return 필요로하고 위임만을 사용하여 그렇게 할 수있는 방법이 없다는 것입니다.

2) 다양한 RestKitRKObjectMapping 등의 선언이 어디에 위치해야하는지 알고 싶습니다. 그들은 각각의 객체에 대한 각각의 컨트롤러에 있어야합니까? 아니면 객체 자체에 있어야합니까? 적절한 구조는 무엇입니까?

새롭게 나온 RestKit 저는 리팩토링을 피하기 위해 가능한 한 처음으로 "올바른"것으로 생각합니다.

답변

0

https://github.com/RestKit/RKGithub을 가능한 시작 지점의 예제 앱으로 확인하십시오.

이 구조를 내 응용 프로그램에 성공적으로 적용했습니다.

이 구조에서 매핑은 루트 수준에 있으며 컨트롤러에 의해 호출됩니다.