我使用Realm和Swift进行查询,但收到此错误:
由于未捕获的异常'无效值'而终止应用程序,原因:'类型为'JournalEntryLine'的对象的属性'id'的int类型的预期对象,但收到:0'
JournalEntryLine类确实有一个名为的属性(Int)id.
我正在使用的代码:
for item in idSet
let idQuery = realm.objects(JournalEntryLine).filter("id = '\(item)' AND type = 'Debit'")
}
Run Code Online (Sandbox Code Playgroud)
idSet是一个包含整数0和向前的集合.我已经确认在运行此查询之前至少[0]始终在集合中.
为什么我收到此错误?
Mas*_*ego 45
-编辑-
如果您使用:id = 'YOUR_VAR_OR VALUE'=>表示id是一个字符串(例如:id ='4')
但是如果你使用:id = YOUR_VAR_OR VALUE=>意味着id是一个整数(Ex:id = 4)
注意:所以当你的id是一个整数时,不要使用引号''
试试这个:
let idQuery = realm.objects(JournalEntryLine).filter("id = \(item) AND type = 'Debit'")
Run Code Online (Sandbox Code Playgroud)
将id ='\(item)'转换为id = \(item),因为id是Integer,如果使用引号,il会将id视为字符串.
如果对你有帮助,别忘记投票.:)
| 归档时间: |
|
| 查看次数: |
6456 次 |
| 最近记录: |