在背景中保存PFObject

时间:2015-06-22 11:51:54

标签: xcode swift pfobject

在我的应用程序中,当我尝试注册PFObjects时没有保存在后台(emailLabel,FirstNameLabel,LastNameLabel,PasswordLabel。任何想法为什么

这是一段代码片段

@IBAction func NextSignupPage(sender: AnyObject) {


let FirstNameObject = PFObject(className: "\(self.FirstNameLabel.text)")
FirstNameObject["First Name"] = "\(self.FirstNameLabel.text)"
FirstNameObject.saveInBackgroundWithBlock { (success: Bool, error: NSError?) -> Void in

    }

let FamilyNameObject = PFObject(className: "\(self.FamilyNameLabel.text)")
FamilyNameObject["Family Name"] = "\(self.FamilyNameLabel.text)"
FamilyNameObject.saveInBackgroundWithBlock { (success: Bool, error: NSError?) -> Void in

    }

let PasswordObject = PFObject(className: "\(self.PasswordLabel.text)")
PasswordObject["password"] = "\(self.PasswordLabel.text)"
PasswordObject.saveInBackgroundWithBlock { (success: Bool, error: NSError?) -> Void in
println("successfully signed Up.")

1 个答案:

答案 0 :(得分:0)

我发现有几个问题可能导致您遇到的问题。首先,正如flashadvanced的评论中所提到的,您应该使用Parse提供的user.signUpInBackground来注册新用户。 (最重要的是,因为Parse会加密您的用户密码。似乎您打算将它们存储为常规字符串。)可以找到完成此操作的文档here.

关于一般创建PFObjects,似乎您想要创建一个存储名字,姓氏和密码的PFObject。您上面的代码将创建三个不同的PFObjects,彼此之间没有任何关系。此外,您为不同的PFObjects提供了三个不同的类,这是它们不会出现在Parse服务器上的同一个类中的另一个原因。完成此操作的正确方法(考虑到您仍然应该使用.signUpInBackground方法,这仅适用于其他非特定PFObjects)将是:

    let object = PFObject(className: "YourClassName")
    object["First Name"] = "\(self.FirstNameLabel.text)"
    object["Family Name"] = "\(self.FamilyNameLabel.text)"
    object["password"] = "\(self.PasswordLabel.text)"
    object.saveInBackgroundWithBlock { (success: Bool, error: NSError?) -> Void in
        println("successfully signed Up.")
    }