PFObject 无法正确使用匹配的 TextField 字符串(Parse、Swift、iOS、Xcode 7 Beta)
PFObject not working correctly with matching TextField String (Parse, Swift, iOS, Xcode 7 Beta)
我的主要目标是让用户在 TextField 中输入一个邮政编码,然后解析将检查数据库,看看该邮政编码是否与数据库中的邮政编码匹配。如果是,它将允许用户注册并发送 println("youre in.")。
如果不是,它将打印 ("you're out")
这是我当前的代码,也是我的 Parse 后端的样子。
class checkAvailability: UIViewController, UITextFieldDelegate {
@IBOutlet weak var zipCode: UITextField!
@IBAction func checkAvailBtn(sender: AnyObject) {
checkZip()
}
func checkZip() {
let usersZipCode = zipCode.text
let query = PFQuery(className:"zipCodes")
query.findObjectsInBackgroundWithBlock {
(objects: [AnyObject]?, error: NSError?) -> Void in
if error == nil {
// The find succeeded.
print("Successfully retrieved \(objects!.count) zip codes.", terminator: "")
// Do something with the found objects
if let zipCodes = objects! as? [PFObject] {
if zipCodes.contains({ [=13=]["zipCodes"] as? String == usersZipCode }) {
print("your in!") // transition to the new screen
}
else {
print("your out.") // do whatever
}
}
} else {
// Log details of the failure
print("Error: \(error!) \(error!.userInfo)", terminator: "")
}
}
}
override func viewDidLoad() {
super.viewDidLoad()
self.zipCode.delegate=self;
}
//Allow only numbers
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
return Int(string) != nil
}
//Display Navbar
override func viewWillAppear(animated: Bool)
{
self.navigationController?.navigationBarHidden = false
}
}
这是我的数据库的图像:
我想通了,我数据库中的每个条目都有一个“;”在邮政编码之后。这就是输入被错误读取且无法正常工作的原因。
我的主要目标是让用户在 TextField 中输入一个邮政编码,然后解析将检查数据库,看看该邮政编码是否与数据库中的邮政编码匹配。如果是,它将允许用户注册并发送 println("youre in.")。 如果不是,它将打印 ("you're out")
这是我当前的代码,也是我的 Parse 后端的样子。
class checkAvailability: UIViewController, UITextFieldDelegate {
@IBOutlet weak var zipCode: UITextField!
@IBAction func checkAvailBtn(sender: AnyObject) {
checkZip()
}
func checkZip() {
let usersZipCode = zipCode.text
let query = PFQuery(className:"zipCodes")
query.findObjectsInBackgroundWithBlock {
(objects: [AnyObject]?, error: NSError?) -> Void in
if error == nil {
// The find succeeded.
print("Successfully retrieved \(objects!.count) zip codes.", terminator: "")
// Do something with the found objects
if let zipCodes = objects! as? [PFObject] {
if zipCodes.contains({ [=13=]["zipCodes"] as? String == usersZipCode }) {
print("your in!") // transition to the new screen
}
else {
print("your out.") // do whatever
}
}
} else {
// Log details of the failure
print("Error: \(error!) \(error!.userInfo)", terminator: "")
}
}
}
override func viewDidLoad() {
super.viewDidLoad()
self.zipCode.delegate=self;
}
//Allow only numbers
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
return Int(string) != nil
}
//Display Navbar
override func viewWillAppear(animated: Bool)
{
self.navigationController?.navigationBarHidden = false
}
}
这是我的数据库的图像:
我想通了,我数据库中的每个条目都有一个“;”在邮政编码之后。这就是输入被错误读取且无法正常工作的原因。