如何检查已经添加到Parse.com的数据重新输入相同的数据不应该发生在如何做到这一点

时间:2015-04-20 17:38:06

标签: android parse-platform

在Android Parse.com中 如果已添加具有相同用户名的数据,则应避免重新输入所有相同数据 如何实现?

2 个答案:

答案 0 :(得分:0)

它很简单,首先进行查询并在尝试保存之前获取用户名。如果查询返回为空,那么您知道用户名不存在,现在您可以推送新数据。

如果您使用解析用户表,则无需执行此检查。当您尝试推送现有用户名时,Parse会自动检查您。

答案 1 :(得分:0)

试试这个:它检查用户名是否已经存在:

public void register(final View v){
if(mUsernameField.getText().length() == 0 || mPasswordField.getText().length() == 0)
    return;

v.setEnabled(false);
ParseUser user = new ParseUser();
user.setUsername(mUsernameField.getText().toString());
user.setPassword(mPasswordField.getText().toString());
//mErrorField.setText("");

user.signUpInBackground(new SignUpCallback() {
    @Override
    public void done(ParseException e) {
        if (e == null) {
            Intent intent = new Intent(RegisterActivity.this, LoggedIn.class);
            startActivity(intent);
            finish();
        } else {
            // Sign up didn't succeed. Look at the ParseException
            // to figure out what went wrong
            switch(e.getCode()){
                case ParseException.USERNAME_TAKEN:
                    mErrorField.setText("Sorry, this username has already been taken.");
                    break;
                case ParseException.USERNAME_MISSING:
                    mErrorField.setText("Sorry, you must supply a username to register.");
                    break;
                case ParseException.PASSWORD_MISSING:
                    mErrorField.setText("Sorry, you must supply a password to register.");
                    break;
                default:
                    mErrorField.setText(e.getLocalizedMessage());
            }
            v.setEnabled(true);
        }
    }
});

}