ios - JSONMedel 库中的模型级联不起作用
问题描述
我正在使用 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"
}}
请帮忙。
解决方案
推荐阅读
- yocto - 如何为单个配方使用不同的编译器?
- reactjs - 将数据从函数加载到状态
- ubuntu - 编写系统调用返回进程的pid
- postgresql - Postgres 在 jsonb 数组中搜索以排除行
- dart - 如何在 Dart 编程中使用 >>>"
- c++ - C++ 中的 Timsort 实现不能处理 10,000 个数字
- php - 如何设置设置 IIS、MS SQL 服务器以显示我的 PHP 错误
- python-2.7 - 如何安装 etsproxy 包?
- html - Unity Web GL html容器:如何根据浏览器宽度“拉伸”宽度窗口?
- java - OracleConnection 不推荐使用的方法问题