查询中包含NOT Equal的水线ORM(sails.js)条件
Waterline ORM (sails.js) conditions with NOT Equal in query
如何在Waterline中编写NOT Equal条件?
此代码:
Users
.count()
.where({
id: { '!=': req.params.id},
lastname: req.body.lastname
})
什么都不做。。。(sails.js中的磁盘适配器)
首先,它什么也不做,因为查看数据库是异步的。你必须使链更长,并添加exec或Q库中的类似内容。
User.count().where({
id: { '!=': req.params.id },
lastname: req.body.lastname
}).exec(function(err, num){
console.log(num);
});
现在它返回0。使其返回正确的数字而不是"!="只需写"!"。
为任何使用Postgres的人添加这个答案。我试着这样做,头撞在墙上,因为它不起作用,我不明白为什么。我到处找,一直找到这个答案。
如果你在postgres上,你想使用
id: { not: req.params.id }
在浏览了Sailsjs的文档并在谷歌上搜索了很长时间后,我在Sailspostgresql模块query.js的评论中找到了这个答案。希望这能帮助挽救一些处于同样情况的人。以下是拯救我理智的完整评论块。
/**
* Specifiy a `where` condition
*
* `Where` conditions may use key/value model attributes for simple query
* look ups as well as more complex conditions.
*
* The following conditions are supported along with simple criteria:
*
* Conditions:
* [And, Or, Like, Not]
*
* Criteria Operators:
* [<, <=, >, >=, !]
*
* Criteria Helpers:
* [lessThan, lessThanOrEqual, greaterThan, greaterThanOrEqual, not, like, contains, startsWith, endsWith]
*
* ####Example
*
* where: {
* name: 'foo',
* age: {
* '>': 25
* },
* like: {
* name: '%foo%'
* },
* or: [
* { like: { foo: '%foo%' } },
* { like: { bar: '%bar%' } }
* ],
* name: [ 'foo', 'bar;, 'baz' ],
* age: {
* not: 40
* }
* }
*/
我没有直接使用count,我使用了长度来了解count。
let user = User.find({
where: {
id: { '!=': req.params.id },
lastname: req.body.lastname
}
});
let count = user.length;
相关文章:
- Sails.js:同时发布文本输入和一个文件
- Sails.js:我可以将一些服务/模型打包为npm并在Sails.jss应用程序中加载npm吗
- 将对象传递到sails.js中的views/layout.ejs
- sails.js beforeCreate方法只接收required设置为true的模型属性
- 引用单个表的多列 - Sails JS API 模型
- 如何使用javascript访问sails.js模型中的属性
- Sails.js/Waterline.add()和.remove()仅适用于第二次调用
- Sails.js指定要从自动插入中排除的js文件
- 聚合Sails.JS/Waterline中的嵌套模型数据
- Sails.js获得多对多关联计数
- 如何在使用Passport.js和Sails.js注册后重定向到特定位置
- 如何防止sails.js在所有视图中传递req对象
- Sails.js在v1、v2等中分组路由
- sails.js中的模拟/存根全局变量
- 在Sails.js中通过关系填充多对多
- 如何将Sails.js挂钩路由连接到策略
- 使用Sails.JS为静态HTML/JS应用程序提供身份验证
- Waterline ORM(sails.js)“;其中或“;在查询中
- 查询中包含NOT Equal的水线ORM(sails.js)条件
- Sails.js+Mongodb使用ORM插入嵌套的json记录