迅速なアプリケーションでレルムDBを使用しています。私は次のように述語で結果をフィルタリングしようとしています:レルムオブジェクトの述語検索が無効です
class func fetchUsersFromDB(usersId: [String]) -> [User]{
var users = [User]()
let realm = Realm()
let predicate = NSPredicate(format: "objectId IN %@", argumentArray: usersId)
var allUsers = realm.objects(User).filter(predicate)
users = Array(allUsers)
return users
}
しかし、これはコンパイルされません。このエラーが発生します:
Terminating app due to uncaught exception 'Invalid value', reason: 'IN clause requires an array of items'
私は間違って何をしていますか?
コンパイルする必要があります。あなたは実行時例外 – Shripada
を取得しています。https://github.com/realm/realm-cocoa/blob/master/Realm/RLMQueryUtil.mmの行番号377は、Swift Arrayのサポートがないことを示しています。 NSFastEnumerationに確認してください。 – Shripada
別の方法がありますか?配列内の各文字列に対してクエリをループする必要がありますか? – denislexic