2015-10-15 75 views
0

我想使用「realm.createOrUpdateAllFromJson(type.class,json-array)」在我的領域創建一些對象。但它會拋出錯誤 - >無法映射JSON。無法映射JSON的領域DB

繼承人Json陣列。這是有效的。

[ 
    { 
     "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; 

以下是引發錯誤的代碼。其在三線

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

真奇怪標記對象的創建是如何工作的很好.. 請幫助!

問候約翰

回答

3

你UUID被標記爲@PrimaryKey和您有多個的「uuid」的同值0。這意味着你打破了每個uuid只有一個元素的主鍵約束。如果仔細觀察LogCat,您可能會發現Could not map JSON異常也提到了這一點。

+1

哦。當我疲倦時,我不應該工作。呵呵.. 感謝您的幫助。我會記住這一點。 –