gpt4 book ai didi

java - 解析增量功能的增量不会超过 1

转载 作者:行者123 更新时间:2023-12-01 11:01:48 27 4
gpt4 key购买 nike

我一直在尝试在我的 Android 应用程序中获取注册/登录表单,并且我一直在尝试在 Parse Core 的帮助下通过将用户信息存储为对象来实现此目的。

我已经让一切都完美地工作了。嗯...几乎。

我现在唯一需要做的就是为每个注册的用户添加一个唯一的用户 ID,并在每次新用户注册时将其加 1。

我尝试使用 Users.increment("userID", 1);,它可以工作,但不会超过值 1

enter image description here

这就是我正在尝试做的事情:

enter image description here

这是我的注册表单代码:

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();
}
}
});

感谢您的宝贵时间。

最佳答案

当您编写 ParseObject user = new ParseObject("Users"); 时,您正在定义表的新行,因此如果您调用 increment() 您将仅增加该行的值。

如果你想做一些不同的事情,我可以帮助你。根据您想要做什么,答案会有所不同:

  • 保留用户总数;
  • 为每个用户添加唯一标识符;
  • ...

以及为什么你想要这样做。请注意,每个用户在 objectId 字段中已经有一个唯一的标识符,这对于大多数(如果不是全部)应用程序来说都是有帮助的。

<小时/>

好的,现在我已经看到了您的第二个屏幕截图并了解您想要实现的目标。这当然是可能的,但我会阻止它。例如,假设您设法编写了工作代码。如果......会发生什么:

  • userID = 1 的用户删除了他的帐户?您是否要缩小(userID = 2、3、...)之后注册的所有用户的 userID?这很难,而且几乎没用。

  • 两个或更多用户同时注册?这将决定严重的同步问题,并且最终可能会出现两个(或更多)用户具有相同的用户 ID。

所以我的答案是:你想要的东西只有努力才能实现,而且很可能没用。如果您提供有关为何要这样做的更多信息,我们可以找到更好的方法。

关于java - 解析增量功能的增量不会超过 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33278554/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com