2015-05-14 29 views
2

Inside Doctor class,我有RealmList - specializationListRealm.IO - 可以使用createOrUpdateAllFromJson解析JSON數組嗎?

public class Doctor extends RealmObject { 

    @PrimaryKey 
    private String doctorId; 
    private FullName fullName; 
    private Age age; 
    private String organizationId; 
    private Position position; 
    private String category; 
    private String loyalty; 
    private RealmList<Specialization> specializationList; 
    private Contacts contacts; 
    private String key; 
.... 

專業化

public class Specialization extends RealmObject{ 

    private String specializationName; 
... 

醫生JSON:

[ 
    { 
    "doctorId": "7d8e72d7-809b-4273-9a3f-fa21718dee7f", 
    "doctorFullName": { 
     "firstName": "FirstName0", 
     "lastName": "LastName0", 
     "middleName": "MiddleName0" 
    }, 
    "doctorPosition": { 
     "positionName": "PositionName0", 
     "department": "Department0" 
    }, 
    "organizationId": "7cfaf5c0-127a-4cfc-b73b-52a35fd02ffd", 
    "specializations": [ 
     { 
     "specializationName": "Specialization name 3" 
     }, 
     { 
     "specializationName": "Specialization name 2" 
     }, 
     { 
     "specializationName": "Specialization name 1" 
     } 
    ], 
    "key": "firstname0 middlename0 lastname0" 
    } 
] 

解析JSON使用createOrUpdateAllFromJson方法:

realm.createOrUpdateAllFromJson(Doctor.class, json); 

我所試圖做的是從醫生越來越RealmList對象:

RealmList<Specialization> specializationList = doctor.getSpecializationList(); 

但specializationList的大小爲0。

境界文檔: 一些JSON的API將返回基本數組類似整數或字符串,目前Realm尚不支持。

可以使用createOrUpdateAllFromJson來解析JSON數組(專業化)嗎?

回答

3

是的,Realm應該能夠解析它,但看起來你的命名不正確。你的Doctor類叫它specializationList,但是在你的JSON中是specializations

如果你改變你的醫生級別以下它應該工作:

public class Doctor extends RealmObject { 

    @PrimaryKey 
    private String doctorId; 
    private FullName fullName; 
    private Age age; 
    private String organizationId; 
    private Position position; 
    private String category; 
    private String loyalty; 
    private RealmList<Specialization> specializations; 
    private Contacts contacts; 
    private String key; 
.... 
+0

有任何解決方案,如果JSON格式如下: [ { 「doctorId」:「7d8e72d7-809b-4273 -9a3f-fa21718dee7f」, 「特」:[ 「專業化名稱3」 , 「專業化名稱2」 , 「專業化名稱1」 ], 「鍵」: 「firstname0 middlename0 lastname0」 } ] 我有一個類似於上面提到的JSON的API響應。任何幫助都會大大降低, – Rajendra