2015-03-02 4 views
0

У меня есть следующие JSON, исходящее от API:Возможно ли «маршалировать» данные в объект Realm?

{ 
    "id": "7", 
    "first_name": "Foo", 
    "last_name": "Bar" 
} 

И я хотел бы мой объект Realm, чтобы выглядеть следующим образом (Objective-C):

@interface RWUser : RLMObject 

@property int key; 
@property NSString *firstName; 
@property NSString *lastName; 

@end 

Дело в том, что имена свойств немного отличаются, чтобы лучше соответствовать целевой среде, Objective-C. id зарезервирован в Objective-C, так что действительно нужно изменить, два других просто косметические, но я предполагаю, что решение для id также может быть применено к двум другим.

Предположим, что я не могу изменить то, что выводит API.

Я пробовал переопределить - (instancetype) initWithObject:(id)object;, но мой не получил вызова, выполнение скачков прямо на версию RLMObject.

Я думал о написании метода сортировки для вызова, прежде чем передавать свои данные в initWithObject. Тем не менее, это не работает при вложении объекта Realm внутри друг друга, не прибегая к более активному участию. Я сделаю это, если нет общего решения.

+1

Вы посмотрели RealmJSON? – segiddins

+0

У меня есть сейчас. Спасибо! – Matthew

ответ

1

Вы не можете импортировать из коробки, когда ваши модели имеют разные свойства, чем ключи JSON. Мы все еще работаем над этим. Лучше всего использовать что-то вроде RealmJSON, Mantle или любую другую картографическую библиотеку для импорта правильных ключей.

Смежные вопросы