現在、私のデータをParseからCloudKitに移植しています。私は自分のデータをCloudKit構造体にインポートすることができましたが、今は正しい量のレコードを受け取っていません。ダッシュボードに表示されている52人のユーザーの代わりに、私は289のレコードを受け取ります。私は単純なCKQuery
とCKQueryOperation
で試しました。CloudKitが返すレコードが多すぎます
CKQuery
は制限のために100の結果を返し、私がCKQueryOperation
を使用しているときには、多くの重複したエントリがある289件の結果が表示されます。
let query = CKQuery(recordType: "User", predicate: NSPredicate(value:true))
let container = CKContainer.defaultContainer()
let publicDB = container.publicCloudDatabase
publicDB.performQuery(query, inZoneWithID: nil) { (records, error) in
print("USER public count: \(records?.count)")
}
そして、私は迅速なクラス構造に自動的に結果を移植されたヘルパーライブラリを書かれているCKQueryOperation用:
私はすべてのユーザーを取得するために、次のコード(CKQueryの道を...)を使用します。
let uw = ROCloudBaseWebservice<User>()
uw.load { (data) in
logger.debug("User count (CKQueryOperation): \(data.count)")
}
あなたは、この負荷からのコードを見たい場合は、ここでそれを見ることができます: https://github.com/prine/ROCloudModel/blob/master/Source/ROCloudBaseWebservice.swift
私はまた、データの間違った量を取得し、私の3つの他のテーブルと同じを持っています。 4つのエントリを持つ1つのテーブルのみが正しいデータ量を受け取ります。
誰か他にこの問題がありましたか?私はテーブルの参照を使用しています。これは問題につながりますか?