iOS上的领域抛出"无效的价值' 301'对于财产'代码'"其中'代码'属于Int类型

时间:2015-07-18 14:33:19

标签: ios json realm

code是一个整数,因此在我的subclass.swift文件中声明为Int。子类与JSON的格式相同,以便将JSON直接保存到Realm。

我得到了这个JSON:

...
"code": 301
...

这就是我拯救它的方式:

realm.create(Student.self, value: jsonStudent, update: true)

但是Realm抛出了这个:

failed: caught "RLMException", "Invalid value '301' for property 'code'"

起初我以为' 301'可能会被解析为一个字符串,但事实并非如此,调用' dynamicType'调试器中的它返回NSCFNumber,这是预期的。

出了什么问题?

1 个答案:

答案 0 :(得分:0)

NSJSONSerialization会将{"code": 301}转换为类型为NSNumber的{​​{1}},即整数。因此,您获得无效属性的事实意味着您的Realm模型上的q属性属于不同类型(可能是codeFloat)?

您可以在这里分享您的模型定义吗?

如果您的Double属性实际上是code或其变体(IntInt32等),这意味着Realm和我有一个错误d建议您在https://github.com/realm/realm-cocoa/issues打开问题。