Каскадное моделирование в библиотеке JSONMedel не работает - PullRequest
0 голосов
/ 10 сентября 2018

Я использую библиотеку JSONModel для создания моделей из ответов API моего проекта. Я пытаюсь получить доступ к userDetails.user.firstName, где userDetails имеет тип LoginModel, и это файл .h для него:

 #import <JSONModel/JSONModel.h>

 @interface UserModel : JSONModel
 @property (nonatomic) NSInteger userId;
 @property (nonatomic) NSString *firstName;
 @property (nonatomic) NSString *lastName;
 @property (nonatomic) NSString *email;
 @property (nonatomic) NSURL <Optional> *profilePictureUrl;
 @property (nonatomic) BOOL tosSigned;
 @property (nonatomic) BOOL emailVerified;
 @property (nonatomic) NSDate *createdAt;
 @property (nonatomic) NSArray *activePromos;
 @property (nonatomic) BOOL hasPaymentSource;
 @property (nonatomic) NSDictionary *emergencyContact;
 @property (nonatomic) NSString *referralCode;
 @property (nonatomic) float balance;

 @end

 @interface LoginModel : JSONModel

 @property (nonatomic) NSInteger expiresIn;
 @property (nonatomic) NSString *accessToken;
 @property (nonatomic) NSString *refreshToken;
 @property (nonatomic) UserModel *user;

 @end

Но каждый раз, когда я пытаюсь получить доступ к элементам UserModel, он выдает следующую ошибку:

[__ NSDictionaryI firstName]: нераспознанный селектор отправлен в экземпляр 0x7f8fab61f430. Вот пример ответа API, к которому мне нужно получить доступ через класс модели:

{"expiresIn": 900000,
"accessToken": "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxMDg2ODI3ODg2IiwiYWNjb3VudFR5cGUiOiJjdXN0b21lciIsImlhdCI6MTUzNjU4MzAyNiwiZXhwIjoxNTM2NTg2NjI2LCJhdWQiOiJodHRwczovL2c0bmlvYjFlZ2wuZXhlY3V0ZS1hcGkudXMtZWFzdC0xLmFtYXpvbmF3cy5jb20vbGF0ZXN0IiwiaXNzIjoicG9waW4ubnljIiwic3ViIjoiMTA4NjgyNzg4NiJ9.qK_GYoPgRDnrrp3zrsWMZuPxJi1T3O-9lAPwbYdwtccJ63cTPBSTlWlbpuYMJXRRLEu371xfzBbImb-6I-8sxQ",
"refreshToken": "eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxMDg2ODI3ODg2IiwiYWNjb3VudFR5cGUiOiJjdXN0b21lciIsImlhdCI6MTUzNjU4MzAyNiwiZXhwIjoxNTY4MTQwNjI2LCJhdWQiOiJodHRwczovL2c0bmlvYjFlZ2wuZXhlY3V0ZS1hcGkudXMtZWFzdC0xLmFtYXpvbmF3cy5jb20vbGF0ZXN0IiwiaXNzIjoicG9waW4ubnljIiwic3ViIjoiMTA4NjgyNzg4NiJ9.xIjuj87dVs5BMJOLKoh47Vx7RXVcSiPb6hGIzdbVWlrYa6gNh7s1wlQOy9U44PJ7hUCUPYHc8V7i4TVD7mtC2A",
"user": {
    "userId": "1086827886",
    "firstName": "JP",
    "lastName": "Kocher",
    "email": “********”,
    "profilePictureUrl": null,
    "tosSigned": false,
    "emailVerified": true,
    "createdAt": "2018-09-04T14:21:22.486Z",
    "activePromos": [],
    "hasPaymentSource": false,
    "emergencyContact": {},
    "balance": 0,
    "referralCode": "jpk6334"
}}

Пожалуйста, помогите.

...