Tag: 查找

MongoDB嵌套对象集合查找

我对MongoDB(运行3.4)和Node.js相当陌生,并且遇到了相关数据的困难。 我有集合A , B , C ,其中A引用数组中的某些B ,而B引用数组中的某些C 现在我正试图读取所有的A而所有包含的文件加载。 两个左连接,可以这么说。 以下是一些数据示例: collectionsA: [{ _id: 1, name: "A one", bs: [ 11, 12 ] },{ _id: 2, name: "A two", bs: [ 12 ] }] collectionsB: [{ _id: 11, name: "B one", bs: [ 21, 22 ] },{ _id: 12, name: "B two", bs: [ 21 […]

在node.js中查找对MongoDB的查询

我有以下查询的oids是对象id的数组。 users.find({ _id: { $in: oids } }, function(err, result){ console.log(result); }); 我期望用户的id列表中的用户ID在对象ID的数组中,但实际结果如下所示: { db: { databaseName: 'users', serverConfig: { _callBackStore: [Object], host: 'localhost', port: 27017, options: [Object], internalMaster: true, connected: true, poolSize: 5, disableDriverBSONSizeCheck: false, slaveOk: undefined, _used: true, replicasetInstance: null, ssl: false, sslValidate: false, sslCA: null, sslCert: undefined, sslKey: undefined, sslPass: undefined, _readPreference: […]

Find()函数retunrs undefined – Mongoose和Node.js

我试图用Node.js和Mongoose做一个简单的函数,如果模型是空的,返回true。 mongooseconfiguration是好的: var mongoose = require('mongoose'); var db = mongoose.createConnection( 'mongodb://localhost:27017/prueba' ); var userSchema = mongoose.Schema({ phoneNumber: Number, name: String }); var User = db.model('User', userSchema, 'User''); 然后我试图做到这一点: User.find(function(err, data) { if (err) {console.log(err)}; console.log(data.length == 0 ); }); 它工作正常,它logging真实,或错误。 然后我试着做: var isUsersEmpty = function () { User.find(function(err, data) { if (err) {console.log(err)}; console.log(data.length == […]

mongoose组通过查找字段

我是NodeJS和Mongoose的新手,我试图做一些高级查询。 我有三个文件(类别,子类别和产品) Category.js var mongoose = require('mongoose'); var CategorySchema = new mongoose.Schema({ name: { type: String, required: true } }); mongoose.model('Category', CategorySchema); module.exports = mongoose.model('Category'); Subcategory.js var mongoose = require('mongoose'); var SubcategorySchema = new mongoose.Schema({ name: { type: String, required: true }, image: { type: Buffer, contentType: String }, idcategory: { type: mongoose.Schema.Types.ObjectId, ref: 'Category' […]

search节点js数组与variables,返回索引或值进行部分匹配

大家好我是新来的节点和JS – 试图做一个小的不协调的通道的机器人,我有点碰壁,找不到解决scheme。 我正在尝试存储用户input数据并在稍后调用它。 到目前为止,我有这个存储数据作为JSON文件。 data[user_id] = value_set var out_data = JSON.stringify(data); fs.writeFile('users.json', out_data); 看起来像这样: {"35978432146597841":"String.1","32146879124653147":"String.2"} 现在我想根据用户的id来回想一下String.X的值。 而这就是我卡住的地方。 我想我需要读取JSON文件并将其传递给一个数组。 我想我成功地使它成为一个arrays,具有以下内容: var in_data = fs.readFileSync('users.json'); var data = JSON.parse(in_data); var arr = [] for(var i in data){ arr.push([i, data [i]]);} 作为… console.log(arr [1]); 显示:['32146879124653147','String.2'] 但我不知道如何通过用户的id(user_id)search该数组来find索引,然后拆分值,或者甚至更好地拉取值。 我试图通过user_idfind“String.X”的所有内容都失败了。 那么,如果我只知道'32146879124653147',我需要做些什么来拉动'String.2'。 任何帮助将不胜感激。 谢谢。 解 var fs = require("fs"); var in_data […]

Node + mongo-native:如何查找和更新集合中的值?

我有用户帐户,按时间到期。 时间以毫秒为单位存储在MongoDB中。 用户由_id标识。 这是架构: { "_id": { "$oid": "506a1438be4f73c11c000002" }, "email": "admin", "password": "admin", "first_name": "admin", "last_name": "admin", "country": "USA", "group": "admin", "expires": 1349129272918 } 要为用户帐户添加+ N天,我使用find(),然后更新()(不知道为什么,但findAndUpdate无法获得以前的值): app.post('/users/add', function(req,res){ addDays(req.body.id, req.body.days, function(status){ res.send(200); }) }); function addDays(id, days, callback) { var obj_id = BSON.ObjectID.createFromHexString(id); db.collection("users", function(error, collection) { collection.find({_id: obj_id}, function(err, user) { var oldexp […]

Mongoose查找返回空数组(适用于其他集合)

我一直在相当成功地在nodejs上写了一个restful api。 MongoDB中存在两个我正在访问的集合,它们返回空string,并且恰好是名称中包含大写字母的唯一集合。 当我使用MongoClient时,我可以很好地访问这些集合,所以我知道它不是过时的mongodb驱动程序。 一个例子是当我尝试访问一个名为bulkBuds的集合 //bulkBuds model var mongoose = require('mongoose'), Schema = mongoose.Schema; var BulkBudsSchema = new Schema({ sourceLicense: String, quantity: Number, strainName: String, priceProfile: String }); mongoose.model('bulkBuds', BulkBudsSchema); 控制器在查询中有一些额外的逻辑,但是一个简单的find也返回一个空string。 //bulkBuds controller var express = require('express'), router = express.Router(), mongoose = require('mongoose'), BulkBuds = mongoose.model('bulkBuds'), Friends = mongoose.model('Api'), config = require('../../config/config'), jwt = require('express-jwt'); […]

在node.js中查找数组上的string的最佳方法是什么?

至于jsfidlle我的代码,问了同样的问题yestrday,但在Java。 我有一个在cmd上运行的node.js脚本。 我想find如果string,用户给我的命令(与procces.argv [2]),包括在我的数组如何可以做到这一点? link – https://jsfiddle.net/mj4761dk/ 希望可以有人帮帮我。 谢谢 的Eyal

如何结合寻找节点快递audiostream

我有一个小的播客饲料,我主持,后我终于把它连接到羽绒一切正常,直到我试图跳过前进/后退。 我终于意识到,寻求不是固有的pipe道stream的一部分。 我search了一下,我似乎无法find任何有用的东西。 用下面的代码,我将如何实现寻求? app.get('/stream/:id', function(req, res) { if (!req.params.id) { res.status(404); res.send("Not found"); } var filePath = path.join(Config.media, '**' , req.params.id); filePath = glob.sync(filePath)[0]; var stat = fs.statSync(filePath); res.writeHead(200, { 'Content-Type': 'audio/mpeg', 'Content-Length': stat.size, 'Accept-Ranges': 'bytes' }); var readStream = fs.createReadStream(filePath); readStream.pipe(res); });

Mongoose.js:通过用户名LIKE值查找用户

我喜欢通过寻找一个名为value的用户来在mongoDb中find一个用户。 问题在于: username: 'peter' 是,如果用户名是“彼得”,或“佩特”..或类似的东西,我不会find它。 所以我想要像SQL一样 SELECT * FROM users WHERE username LIKE 'peter' 希望你们能得到我所要求的? 短:mongoose.js / mongodb中的“字段LIKE值”