Die*_*ros 7 objective-c ios restkit
我有一些对象,我在请求正文中作为JSON发送到服务器,用于POST请求.我的问题与布尔属性有关.
假设我在作为JSON发送的对象中有此属性:
@property (nonatomic) BOOL exported;
默认情况下,RestKit将布尔值作为任一1或0以JSON 格式发送.如何设置RestKit以便将所有BOOL作为true或false(它是JSON布尔类型)发送.
有趣的是,当从另一个方向,从JSON true或falseBOOL属性,RestKit读取JSON true/false就好了,适当地设置属性.
这个问题源于 SQLite 没有布尔数据类型。因此,如果我的核心数据模式中有一个布尔值,它最终仍然会作为整数存储在 SQLite 中(int 值为 1 或 0)。这就是为什么我在通过 RestKit 输出 JSON 时看到1or 0。
为了纠正这个问题,我将我的属性从原来的问题更改BOOL为NSNumber:
@property (nonatomic) NSNumber *exported;
每当我分配给这个属性时,我需要用NSNumber布尔值来设置它。
target.exported = [NSNumber numberWithBool:[self.exported boolValue]];
Run Code Online (Sandbox Code Playgroud)
生成的 JSON 现在是正确的,因为我使用以下命令设置 NSNumber boolValue:
"exported" : true
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3254 次 |
| 最近记录: |