this is one way
println(geoPoint)
user["location"] = geoPoint
let rejectedUsers: [String] = user["rejected"].copy() as [String]
let acceptedUsers: [String] = user["accepted"].copy() as [String]
let ignoredUsers = rejectedUsers + acceptedUsers
var query = PFUser.query()
query.whereKey("location", nearGeoPoint: geoPoint)
query.whereKey("username", notEqualTo: user.username)
query.whereKey("gender", equalTo: user["interestedIn"])
query.whereKey("username", notContainedIn: ignoredUsers)
query.limit = 10
query.findObjectsInBackgroundWithBlock({
(objects: [AnyObject]!, error2: NSError!) -> Void in
if error2 != nil {
println(error2)
} else {
if objects.isEmpty {
println("empty query")
} else {
for object in objects {
self.usernames.append(object.username)
self.userImages.append(object["image"] as NSData)
, [ "reject" ] parse
+ "ignoredUsers"
:
query.whereKey( "username", notContainedIn: ignoredUsers)