私のプロジェクトでは、CloudKitレコードタイプ "User"(私は他のレコードタイプ名でもテストしました)では、電子メールフィールドを使ってレコードを作成します。特定の文字列を持つレコードを返すCloudkit
私はそのメールと正確に一致し、一致するレコードを取得しようとしています。私はINまたは==述語でこれをやっています(単一または電子メールのリスト用)。
let query = CKQuery(recordType: "User", predicate: NSPredicate(format: "email IN %@", emails))
let query = CKQuery(recordType: "User", predicate: NSPredicate(format: "email == %@", "[email protected]"))
私は問題を抱えている電子メールが「[email protected]」で、このメールでレコードを取得しようとすると、私は「[email protected]」それをするように変更があれば、0を返します。 OKを取得します。
最初は特殊文字と見なしましたが、他の文字列は正常に動作していました。それから私は長さを仮定しますが、他の長い文字列は正常に動作します。
誰にもこの問題がありますか?なぜ私はこの文字列に一致することができないのか理解せずにCloudKitを信頼するのは苦労している。
私は同様の質問をしましたが、詳細を知る前に、ユーザーはこれをテストすることができ、この文字列で同じ結果が得られました。このポストははるかに簡潔であり、再作成するステップがあります。
あなたが取得、その後、あなたは ' "メール==%の@" に述語を変更した場合、 "[email protected]"'(なし 'T')と言っています期待した結果を戻すか?その場合、データベースの値が実際に 'julio_ukohgsp_chevez @ tfbnw.ne'ではないことを本当に確信していますか? – rmaddy
ええ、私は100%確信しています。それは奇妙です。私は何度もチェックし、手動で入力しました。あなたの特定の文字列を試すことはできますが、1文字を置き換えても機能しました。 – JDM
私はまったく同じ問題を抱えています。これについて何かを見つけましたか? –