У меня есть небольшое приложение, использующее RestKit с сервером с поддержкой Sinatra. Когда я отправляю объект пользователя на сервер, сервер успешно сохраняет пользователя и отвечает на json-представление вновь созданного пользователя.RestKit - Опубликовать объект и обновить его атрибуты
Вот код, чтобы создать пользователя на клиенте:
User *currentUser = [User currentUser];
currentUser.email = @"[email protected]";
currentUser.firstName = @"Jacob";
currentUser.lastName = @"Morris";
currentUser.phone = @"2088956709";
currentUser.deviceId = @"MY-DEVICE-ID";
currentUser.password = @"password";
currentUser.passwordConfirmation = @"password";
currentUser.timeStamp = [NSNumber numberWithFloat:3987987987.12233]; //totally random
RKSpecResponseLoader *loader = [RKSpecResponseLoader responseLoader];
[dataController.rkObjectManager postObject:currentUser mapResponseWith:[User rkObjectMapping] delegate:loader];
[loader waitForResponse];
NSLog(@"Current user id is now: %@", currentUser.userId);
STAssertTrue([loader success], @"response from server should be a success");
Ответ приходит от сервера выглядит следующим образом:
"{\"user\":{\"deviceId\":\"MY-DEVICE-ID\",\"email\":\"[email protected]\",\"userId\":5,\"lastName\":\"Morris\",\"phone\":\"\",\"timeStamp\":3987987968.0}}"
Сервер отвечает за присвоение userId
при успешном создании объекта. Когда ответ вернется, я хочу, чтобы объект currentUser обновлялся на стороне клиента. Я думаю, что это должно быть возможно, так как я передаю ссылку на отправленный объект на загрузчик объектов. Как я могу заставить загрузчик объектов обновить userId после успешного ответа? (Я хотел бы иметь возможность сделать это, не забирая сам ответ.)
Я не могу импортировать RKSpecResponseLoader в модульное тестирование на iOS. Какую библиотеку мне нужно использовать с моей тестовой целью, чтобы ее можно было скомпилировать? – cipherz
Я закончил копирование и изменение RKSpecResponseLoader прямо в мою тестовую цель, изменив ее и скомпилировав ее оттуда. Таким образом, я смог добавить и изменить возможности загрузчика ответов без нарушения сборки RestKit. – jacobsimeon