Parse platform setObjectId不工作

Parse platform setObjectId不工作,parse-platform,Parse Platform,我想知道在使用parse创建项目时是否可以分配id: ParseObject parseWord = new ParseObject(DataBaseHelper.TABLE_WORD); parseWord.setObjectId(idRow); parseWord.put(Word.NAME, word.getName()); parseWord.put(Word.TYPE, word.getType());

我想知道在使用parse创建项目时是否可以分配id:

ParseObject parseWord = new ParseObject(DataBaseHelper.TABLE_WORD);
            parseWord.setObjectId(idRow);
            parseWord.put(Word.NAME, word.getName());
            parseWord.put(Word.TYPE, word.getType());
            parseWord.put(Word.TRANSLATE, word.getTranslate());
            parseWord.put(Word.EXAMPLE, word.getExample());
            parseWord.put(Word.NOTE, word.getNote());
            parseWord.put(Word.SYNC_AT, today);
            parseWord.saveInBackground();
此代码不起作用,它不会将项目保存到服务器中。如果我删除setObjectId(idRow);它起作用了。我做错了什么

是否需要知道何时完成saveInBackground


根据ParseObject.setObjectID()API文档,谢谢

对象id的Setter。通常不需要使用此设置。 但是,在某些情况下,这可能很方便。例如,如果你是 自己序列化ParseObject并希望重新创建它,您可以 使用此选项可以准确地重新创建ParseObject

同样来自API文档:

对象保存到服务器后,将立即分配对象id


正如引号所示,您可能需要设置对象ID的原因是,如果您希望执行类似于将解析对象的字段保存到文件的操作。如果要从文件中获取字段并重新创建解析对象,则需要对其进行设置,因为如果不将其保存到服务器,而只是将对象的实例用于应用程序的内部目的,则无法对其进行设置。

根据ParseObject.setObjectID()API文档:

对象id的Setter。通常不需要使用此设置。 但是,在某些情况下,这可能很方便。例如,如果你是 自己序列化ParseObject并希望重新创建它,您可以 使用此选项可以准确地重新创建ParseObject

同样来自API文档:

对象保存到服务器后,将立即分配对象id


正如引号所示,您可能需要设置对象ID的原因是,如果您希望执行类似于将解析对象的字段保存到文件的操作。如果要从文件中获取字段并重新创建解析对象,则需要对其进行设置,因为如果不将其保存到服务器,而只是将对象实例用于应用程序内部的目的,则无法对其进行设置。

根据其内部模式定义,可能尝试设置自己的解析对象是徒劳的。我不能确定确切的错误,但他们显然不支持。但别担心,你可能没有理由担心他们选择的确切ID,因为它肯定是唯一的。我想唯一的解决办法是用我的应用程序生成的ID创建另一个列。但是非常感谢您的回复:)。是的,无论如何尝试同步ID都不是个好主意。其他东西可以添加你的应用程序已经拥有的ID,然后你需要重新同步它。。反之亦然。你的应用程序可能是唯一添加/删除ID的东西,因此你不必担心这一点,但parse.com显然不打算在这方面信任你,也不必费心实现他们信任您所需的功能:)最好让数据库强制执行他们直接控制的ID的唯一性。根据其内部架构定义,可能尝试设置自己的ID是徒劳的。我不能确定确切的错误,但他们显然不支持。但别担心,你可能没有理由担心他们选择的确切ID,因为它肯定是唯一的。我想唯一的解决办法是用我的应用程序生成的ID创建另一个列。但是非常感谢您的回复:)。是的,无论如何尝试同步ID都不是个好主意。其他东西可以添加你的应用程序已经拥有的ID,然后你需要重新同步它。。反之亦然。您的应用程序可能是添加/删除ID的唯一工具,因此您不必担心这一点,但parse.com显然不打算在这方面信任您,也不想费心实现他们信任您所需的功能:)最好让数据库强制执行他们直接控制的ID的唯一性。