使用最新版本的Waterline 0.13.1-6
独立版。
此版本中不再存在array
类型。所以我假设存储数组的方法现在使用JSON
类型。
我的模型示例Model
:
attributes: {
someArray: { type: 'json' }
}
问题:在Model
的实例上,model.someArray
现在是一个字符串。每次我请求获取数组中的值时,我都应JSON.parse
。这非常不方便,显然会导致错误。
新的Waterline中是否有内置方法可以使其干净(自动解析JSON字段......)?
答案 0 :(得分:2)
您可以按照建议使用JSON。无需解析它,这是在您进行元获取或查找时自动完成的。你可以做到
YourModel.create({someArray: [1,2,3]}).meta({fetch: true}).then( out => {
console.log(out.someArray[0]); //1;
});
我会找到一些其他识别属性,比如说myRef:{type:'string'}
然后你可以做
YourModel.find({myRef: 'something'}).limit(1).then( out => {
console.log(out[0].someArray[1]); //2
});