2016-07-01 20 views
3

jsonから自分の領域データベースに配列を格納できないようです。反応するネイティブ領域に配列を格納する

contact: 
     { 
      name: 'Test Name', 
      contactDetails: [ '4354354', '099324' ] 
     }, 

IレルムにするcontactDetailsを挿入するにはどうすればよい: は私に返されたJSONがあるとしましょうか?

class stringObject extends Realm.Object {} 
    stringObject.schema = { 
    name: 'stringObject', 
     properties: { value : 'string' } 
    }; 

とスキーマにこれを追加してみました:

contactDetails: {type: 'list', objectType: 'stringObject'} 

しかし、それは領域内に挿入することカント

アイブ氏は、このHow to store [String] or [Int] in react-native realmによると、このようなカスタムオブジェクトを作成してみました。私はstringObjectのプロパティの値を空にしようとしましたが、まだ動作しません。

答えて

3

リストにはオブジェクトが含まれているため、挿入前にJSONを正しいフォームに変換する必要があります。あなたはrealm.createを呼び出す前に、有効なStringObjectオブジェクトの配列を表すためにcontactDetailsを変換する必要が提供されたスキーマの場合:

contactDetails: [ '4354354', '099324' ] 

contactDetails: [ { value: '4354354' }, { value: '099324' } ] 

へのあなたのような何かと Array.mapを使用してこれを行うことができます
json.contactDetails = json.contactDetails.map(s => { value: s }); 
0

スキーマのプロパティで:

contactDetails: { type: 'string?[]' }, 
関連する問題