Я смотрю документацию по Parse, и есть интересная функция, которую я хотел бы использовать, чтобы сделать валидацию для регистрации пользователей, если зарегистрировано (принято) имя пользователя и адрес электронной почты. Документация содержит пример для следующих целей:Swift Parse - используя функцию PFQuery илиQueryWithSubqueries
var lotsOfWins = PFQuery(className:"Player")
lotsOfWins.whereKey("wins", greaterThan:150)
var fewWins = PFQuery(className:"Player")
fewWins.whereKey("wins", lessThan:5)
var query = PFQuery.orQueryWithSubqueries([lotsOfWins, fewWins])
query.findObjectsInBackgroundWithBlock {
(results: [PFObject]?, error: NSError?) -> Void in
if error == nil {
// results contains players with lots of wins or only a few wins.
}
}
моя версия этого является:
/*Check username and email not taken*/
let usernameInputCheck = PFQuery(className:"_User")
usernameInputCheck.whereKey("appUsername", equalTo: self.usernameTxtField.text!)
let emailInputCheck = PFQuery(className:"_User")
emailInputCheck.whereKey("email", equalTo:self.emailTxtField.text!)
let query = PFQuery.orQueryWithSubqueries([usernameInputCheck, emailInputCheck])
query.findObjectsInBackgroundWithBlock {
(results: [PFObject]?, error: NSError?) -> Void in
if error == nil {
// results contains players with lots of wins or only a few wins.
}
}
Я хочу, чтобы иметь возможность проверить, если адрес электронной почты или имя пользователя принимается, и если да, установить флаг так, чтобы Я могу задать сообщение пользователю, например: «Электронная почта уже зарегистрирована» или «Имя пользователя недоступно, попробуйте другое».
Спасибо за вашу помощь заранее.
Update: Вот ссылка на Разобрать документы: https://parse.com/docs/ios/guide#queries-compound-queries
Да, что бы проверить, отправлено ли электронное письмо или нет , но то, что я просил, проверяет, принимаются ли как электронная почта, так и имя пользователя (или либо). Учитывая, что мой столбец имени пользователя является обычным (не используемое по умолчанию имя пользователя, обработанное Parse), этот подход приведет к двум запросам, чтобы проверить имя пользователя и адрес электронной почты отдельно. –
Проверьте редактирование, которое я только что сделал. Вы можете просто добавить несколько запросов whereKey/equalTo к запросу. – StevenOjo
Да, действительно, вы можете, но потом, как вы узнаете, какое сообщение представляет пользователю (имя пользователя принято или отправлено по электронной почте)? Я уже решил это, используя вышеприведенный код, который я изначально разместил, и имел функцию, возвращающую int и основанную на значении, я знаю, что это имя пользователя или адрес электронной почты. Затем я устанавливаю сообщение и показываю пользователю. Я очень благодарен за то, что вы пытаетесь помочь хотя :) –