我似乎无法存储从json到我的领域数据库的数组。让我们说回到我身边的json是:
contact:
{
name: 'Test Name',
contactDetails: [ '4354354', '099324' ]
},
如何将contactDetails插入领域?
我已经尝试根据这个qazxsw poi创建这样的自定义对象:
How to store [String] or [Int] in react-native realm
并尝试将其添加到架构:
class stringObject extends Realm.Object {}
stringObject.schema = {
name: 'stringObject',
properties: { value : 'string' }
};
但它无法插入领域。我尝试清空stringObject的属性值,但它仍然无法正常工作。
Realm中的列表包含对象,因此您需要在插入之前将JSON转换为正确的形式。对于您提供的模式,您需要在调用 contactDetails: {type: 'list', objectType: 'stringObject'}
之前转换contactDetails
以表示有效StringObject
对象的数组:
realm.create
至
contactDetails: [ '4354354', '099324' ]
您可以使用contactDetails: [ { value: '4354354' }, { value: '099324' } ]
执行此操作,例如:
Array.map
在架构的属性中:
json.contactDetails = json.contactDetails.map( s => { value: s } );