在第一个自定义PFUser SignUp上的用户表上未创建新列

时间:2015-06-09 07:21:56

标签: parse-platform pfobject pfuser

我现在正在尝试子类化 PFUser 。通常我会期望未初始化的变量将作为用户表上的列创建。但不知何故,它只会创建初始化变量。

我是这样做的。

class CustomUser: PFUser, PFSubclassing {
    @NSManaged var displayName: String;
    @NSManaged var phone: String;
    @NSManaged var profilePicture: PFFile;
    @NSManaged var birthDate: NSDate;
}

以下是我如何使用它。

var user = CustomUser();
user.email = emailTextField.text;
user.username = emailTextField.text;
user.password = passwordTextField.text;

user.displayName = displayNameTextField.text.capitalizedString;

user.signUpInBackground();

请注意,当用户首次注册时,我没有要求他们输入手机,profilePicture和birthDate

Parse只为我创建displayName列。

先前版本的Parse会自动在用户表上创建这些列。

我尝试放弃用户类并执行注册过程。但是那些未初始化的字段没有添加到列中。改变了什么?

有什么想法吗?

我目前正在使用v1.7.4。

1 个答案:

答案 0 :(得分:1)

我怀疑先前版本的Parse是否符合您的预期。据我所知,框架总是以这种方式表现,所以没有任何改变。

在应用程序中创建新对象并将其发送到Parse进行保存时,仅发送具有非空值的字段(以及值)。没有必要发送一个空值的列名,它只会增加发送给Parse的数据的大小。

所以是的,一个微小的副作用是在至少一个对象为它们设置值之前不会创建列。如果您仍希望它们出现在数据浏览器中,您可以手动创建它们。