您好我使用带有react-native的域数据库。
我有Item
架构并按ID找到一个项目。
var items = realm.objects('Item');
var item = items.filtered('id == $0', item_id);
console.log(item.name); // It should be printed name, but undefined
我无法找到物品。所以使用lodash。
var item = _.find(realm.objects('Item'), _.matchesProperty('id', item_id));
console.log(item.name); // print "ABCD"
如何通过ID获取项目?
答案 0 :(得分:7)
filtered
会返回一个Results
对象,该对象与javascript Array
非常相似。
所以你的代码应该是:
var items = realm.objects('Item').filtered('id == $0', item_id);
var item = items[0];
console.log(item.name); // should print the name
答案 1 :(得分:1)
realm.objectForPrimaryKey('Item', item_id)
答案 2 :(得分:0)
您可以使用 objectForPrimaryKey
函数,但必须设置 primaryKey 您的架构
设置主键
const BookSchema = {
name: 'Book',
primaryKey: 'id',
properties: {
id: 'int', // primary key
title: 'string',
price: 'float'
}
};
const findObject = realm.objectForPrimaryKey('Item', item_id);