1

Strongloop Loopback文档没有说明使用按位过滤器检索对象的任何内容。

Loopback API 文档中的示例

// Just an example of syntax, it does not do bitwise filter
Inventory.find({where: {status: {gt: 4}});

通过直接连接到MongoDB,我可以:

// Select items with 3rd bit on in `status` field
db.inventory.find({status: {$mod: [4, 0]}});

我可以在Loopback模型界面后面做同样的事情吗?

在 MongoDB 文档中,他们说$were 条件可以做同样的事情,但更昂贵

db.inventory.find( { $where: "this.qty % 4 == 0" } )

我可以在环回中执行以下操作:

Inventory.find({where: "this.qty % 4 == 0"});

或者它会失败?

在我的模型中使用面向位的状态字段的整个想法是否矫枉过正?我应该只使用某种包含字符串状态列表的数组字段吗?在数据库存储方面是不是太贵了?

谢谢

4

1 回答 1

2

LoopBack 使用与 MongoDB 类似的 JSON 对象来描述查询。请记住,LoopBack 支持多种数据库,例如 MongoDB、MySQL 和 Oracle。理想情况下,操作员应该得到所有人的支持。LoopBack 连接器将其映射到本机查询。

我们还不支持所有连接器的按位运算符。但是对于 MongoDB,我们通过添加 $ 来传递运算符。例如,{mod: [ 4, 0 ])变成$mod: [ 4, 0 ]

打开一个问题。我们会在那里跟进。

于 2014-01-31T17:36:13.433 回答