node.js - 使用mongoose的cursor的問題
問題描述
自己測試過成功的樣例,自己新建了個集合插入了幾條數(shù)據(jù):
//testSchema.jsvar mongoose = require(’./db.js’), Schema = mongoose.Schema;var TestSchema = new Schema({ name: {type: String}, age: {type: Number}})var TestModel = mongoose.model(’stream’, TestSchema, ’stream’);var cache = [];var co = require(’co’);co(function*() { 'use strict'; const cursor = TestModel.find({}).cursor(); for (let doc = yield cursor.next(); doc != null; doc = yield cursor.next()) {console.log(doc); }});
數(shù)據(jù)是可以都拿到的
但是我去試自己爬蟲爬到的數(shù)據(jù)集合,只取4條數(shù)據(jù)出來,就有問題:
//test.jsvar mongoose = require(’./db.js’), Schema = mongoose.Schema;var LagouSchema = new Schema({ name: {type: String}, cid: {type: Number}, process: {type: String}, content: {type: String}, url: {type: String}, tag: {type: String}, total: {type: Number}, salary: {type: Array}});var Lagou = mongoose.model(’lagou’, LagouSchema, ’lagou’);var co = require(’co’);co(function*() { 'use strict'; const cursor = Lagou.find({’cid’: {$gte:22777, $lte:22780}}).cursor(); for (let doc = yield cursor.next(); doc != null; doc = yield cursor.next()) {console.log(doc); }});
然后卡這兒就不會動了,代碼都是一致的,怎么就取不出數(shù)據(jù)來呢,求解
問題解答
回答1:感覺你遇到的情況是cursor是空的。
檢查一下:
1、在mongo下面使用相同的條件查詢一下,看是否有返回的文檔。
相關(guān)文章:
1. docker-machine添加一個已有的docker主機(jī)問題2. css - 關(guān)于div自適應(yīng)問題,大家看圖吧,說不清3. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””4. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?5. angular.js使用$resource服務(wù)把數(shù)據(jù)存入mongodb的問題。6. dockerfile - [docker build image失敗- npm install]7. docker-compose中volumes的問題8. python - django如何每次調(diào)用標(biāo)簽的時候都取隨機(jī)數(shù)據(jù)9. linux - mysql源碼安裝遇到的問題10. javascript - Vue 自定義控件v-model雙向綁定
