ove*_*t13 1 android json realm
我有一个JSON包含嵌套json 的字符串
{
"name": "name",
...
...
"profile": {
"id": 987,
"first_name": "first name"
...
...
}
}
Run Code Online (Sandbox Code Playgroud)
我试图通过使用该方法将其映射JSON到Realm,realm.createObjectFromJson(Class clazz, String string)并且问题在于嵌套的JSON未映射,所得到的RealmObject实例对应于所有字段的"profile"has 0和nulls.我realm.beginTransaction()在创建操作之前和realm.commitTransaction()之后使用过.
我正在使用'io.realm:realm-android:0.80.1'我的Android项目.
你能告诉我我做错了什么吗?
谢谢.
编辑这些是我的模型类.简单的RealmObjects链接在一起
public class SomeClass extends RealmObject {
private String name;
private Profile profile;
public Profile getProfile() {
return profile;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name= name;
}
}
public class Profile extends RealmObject {
private String firstName;
private String lastName;
private String birthdate;
private boolean newsLetter;
private boolean push;
private int userId;
private Date lastUpdate;
private RealmList<RealmAddress> addresses;
private RealmList<RealmGender> genders;
}
Run Code Online (Sandbox Code Playgroud)
profile类只包含getter和setter,它包含其他字符串和整数,为简单起见,我删除了它们.
您的JSON名称与您的子对象字段名称不匹配,这就是您没有看到任何数据的原因.您的profile名称与该字段匹配SomeClass,这意味着创建了对象(使用默认值),但由于没有任何字段匹配Profile,因此没有设置任何字段.
firstName != first_name
userId != id
Run Code Online (Sandbox Code Playgroud)
如果您想在JSON和Java模型中使用单独的名称,则应使用类似GSON(http://realm.io/docs/java/#gson)的内容,因为Realm尚不支持.
| 归档时间: |
|
| 查看次数: |
6457 次 |
| 最近记录: |