无法为Realm DB映射json

时间:2015-10-15 14:09:14

标签: android json parsing realm jsonobject

我想使用" realm.createOrUpdateAllFromJson(type.class,json-array)"在我的领域中创建一些对象。但它会引发错误 - >无法映射json。

继承Json-Array。这是有效的。

[
    {
        "uuid": "99975b79-adac-4baa-a1ab-96c0db23c0ee",
        "name": "Joris"
    },
    {
        "uuid": "0",
        "name": "Adrian"
    },
    {
        "uuid": "0",
        "name": "Oliver"
    },
    {
        "uuid": "0",
        "name": "Michael"
    },
    {
        "uuid": "0",
        "name": "David"
    },
    {
        "uuid": "0",
        "name": "Daniel"
    }
]

并且是我的所有者模型。

public class Owner extends RealmObject{

@PrimaryKey
private String      uuid; //PK
private String      name;
private String      token;
private RealmList<Idea> ideas;
private RealmList<Vote> votes;

这里是抛出错误的代码。它在3.行

    realm.beginTransaction();
    realm.createOrUpdateAllFromJson(Tag.class, tagJson);
    realm.createOrUpdateAllFromJson(Owner.class, ownerJson);
    realm.commitTransaction();

奇怪的是,Tag-Objects的创建工作得很好...... 请帮助!!

问候约翰

1 个答案:

答案 0 :(得分:3)

您的UUID被标记为@PrimaryKey,并且您有多个“uuid”,其值为0。这意味着您打破了每个uuid只有一个元素的主键约束。如果仔细查看LogCat,您可能会看到Could not map JSON异常也提到了这一点。