我目前正在尝试简化我的 Obj-C 模型,但似乎 json 数据使它比我想象的要复杂一些。我无法将数组数据转换为一些布尔值。
据我所知,不可能使用框架JSONKeyPathsByPropertyKey来定义密钥是这样的:@"gsRightIPServerStart", @"rights.name['RIGHT_IP_SERVERSTART'].granted" 或者至少可以访问序列化字典在使用的类中,例如。我的 FNPServer 类。
这是我必须使用的 JSON 响应的一部分:
...,
isowner": false,
"rights":
[
{
"name": "RIGHT_IP_SERVERSTART",
"granted": true
},
{
"name": "RIGHT_IP_SERVERREMOVE",
"granted": true
},
{
"name": "RIGHT_IP_SWITCHCONFIGMODE",
"granted": true
},
{
"name": "RIGHT_IP_SERVERCREATE",
"granted": true
}
]}
这是一个简单的数组,可以很容易地表示为布尔值。在这种情况下,一些 NSNumbers (CoreData):
@interface FNPServer : MTLModel <MTLJSONSerializing>
...
@property (nonatomic, strong) NSNumber * gsRightIPServerStart;
@property (nonatomic, strong) NSNumber * gsRightIPServerStop;
@property (nonatomic, strong) NSNumber * gsRightIPServerRestart;
@property (nonatomic, strong) NSNumber * gsRightIPServerModify;
@end
在生成此对象以自行处理转换时或之后,我找不到获取源字典的解决方案。
我不想创建几个不同的类并检查属性以生成一个充满完整对象的数组,以解决一个简单的是或否问题。它应该在没有“外部帮助”的情况下工作,否则我必须检查一堆请求是否存在数据。
谢谢