1

我使用 ActiveAndroid 将我的对象保存到数据库中,效果很好。在我的应用程序中,我使用以下场景:

  • 我将新对象保存到数据库中的表中
  • 我从该表中选择了一些对象
  • 我将它们添加到 List<>
  • 我从该表中删除所有内容
  • 我在我的列表上使用 foreach 并在每个对象上调用“保存”

问题来了。在我的表格中,除了前面提到的最近保存的对象之外,其他对象都被保存了。我创建了一个计数器来检查调用了多少“保存”:计数器比表中对象的计数多 1。我调试了它,没有引发异常,调用了保存。我使用最新版本的 ActiveAndroid (3.0.99)
我应该检查什么?

4

1 回答 1

1

好吧,如果您通读它,就可以在场景中看到问题。我将现有
对象 复制到内存并尝试重新插入它。ORM 仅检查对象的 mID,如果它不为 null,则调用更新。由于我的对象有一个 id,尽管表被截断,但它试图更新,所以没有更新。 我不知道模型从不检查表只是它自己的 id 是否是故意的,但这可能会导致这样的问题。

于 2013-06-19T11:52:17.623 回答