java解析增量特性的增量不会超过值1
我一直在尝试在我的安卓应用程序中创建一个注册/登录表单,我一直在尝试借助Parse Core将用户信息存储为一个对象
我已经把一切都做好了。好差不多
现在我唯一需要做的就是为每个注册的用户添加一个唯一的用户ID,并在每次新用户注册时将其递增1
我尝试过使用Users.increment("userID", 1);
,它是有效的,但没有超过值1
这就是我想做的:
这是我的登记表代码:
ParseObject Users = new ParseObject("Users");
Users.increment("userID", 1);
Users.put("first_name", firstname);
Users.put("last_name", lastname);
Users.put("email", email);
Users.put("password", password);
Users.saveInBackground(new SaveCallback() {
@Override
public void done(ParseException e) {
if (e == null) {
//User registered successfully.
Toast.makeText(RegisterActivity.this, "Registration successful."
, Toast.LENGTH_SHORT).show();
//Take user to LoginActivity.
startActivity(new Intent(RegisterActivity.this, LoginActivity.class));
} else {
//User registration failed.
Toast.makeText(RegisterActivity.this, "Registration failed."
, Toast.LENGTH_SHORT).show();
//Show error.
e.printStackTrace();
}
}
});
谢谢你抽出时间
# 1 楼答案
当您写入
ParseObject user = new ParseObject("Users");
时,您正在定义表的一个新行,因此如果您调用increment()
,您将只增加该行的值如果你想做些不同的事,我可以帮你。答案因您想做什么而有所不同:
还有你为什么要这么做。请注意,每个用户在
objectId
字段中已经有了一个唯一的标识符,这对大多数(如果不是全部)应用程序都有帮助好的,现在我已经看到了你的第二个屏幕截图,并且理解了你想要实现的目标。这当然是可能的,但我不鼓励这样做。例如,假设您成功地编写了工作代码。如果……,会发生什么情况
userID=1的用户是否删除其帐户?您是否要缩小在(userID=2,3,…)之后注册的所有用户的userID?这很难,而且基本上是无用的
两个或多个用户同时注册?这将决定严重的同步问题,最终可能会有两个(或更多)用户具有相同的用户ID
所以我的答案是:你想要的只有通过努力才能实现,而且可能是无用的。如果您提供有关为什么要这样做的更多信息,我们可以找到更好的方法