android - 开始使用 sugarORM 1.4

标签 android sugarorm

我正在尝试弄清楚如何使用 sugarORM(版本 1.4,imported with Gradle)。

我有一个带有 public String name 的简单对象场等。

我用那个名字构造了那个简单的对象并像这样保存它(用 TEST_TYPE 一个随机字符串):

    CustomObject type = new CustomObject(TEST_TYPE);
    long l=type.save();
    Toast.makeText(this, "Type ajouté ! id="+l, Toast.LENGTH_SHORT).show();

我的日志现在显示 id=14,所以我认为写入是可以的。

但是当我想阅读时,没有任何意义:

  • CustomObject.count(CustomObject.class)返回 14
  • CustomObject.findById(CustomObject.class, 2)返回空
  • CustomObject.first(CustomObject.class)返回空
  • CustomObject.find(LifeEventType.class, "NAME = ?", new String[]{TEST_TYPE})返回空

我不知道它是否相关,但我在警告日志中收到此异常: java.lang.NoSuchMethodException: <init> at com.orm.SugarRecord.find(SugarRecord.java:196) (这对于像我这样的菜鸟来说太高级了......)

我做错了什么?

最佳答案

当您不提供空构造函数时会发生这种情况。

SugarORM 可以正确保存实体,但在您尝试执行选择查询时无法实例化它们。

解决方案是在您的实体中包含一个空的构造函数和 getter/setter

public CustomObject(){}

更多文档 here

关于android - 开始使用 sugarORM 1.4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34109795/

相关文章:

Android Sugar ORM 尝试保存记录,成功,但貌似卡在了some look

java - 在现有数据库中创建表 sqlite sugar orm

android - 应用程序被销毁后立即发出通知

javascript - Node.js - Socket.IO 1.0 - 超时事件

android - Eclipse 不识别任何导入

java - 在 OnClick 方法外部传递 int 的值

android - 如何使用 sugar orm 运行迁移

android - 选择最后一行

java - 父类(super class)中的泛型可以处理子类类型

android.media 包在 sdk-platforms[android.jar] 中缺少几个类