0
私は既存のMongoDBコレクションを持つMEAN Stackアプリケーションで作業しています.find()の条件を定義すると条件なしで動作する間に結果は返されませんでした。ここで条件付きのMongoose .find()は結果を返しません
は私のモデルファイルからコードです:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var mainSchema = new Schema({
id: Number,
x: Number,
y: Number,
prio: Number,
type0: String,
type1: String,
type2: String,
width: Number,
height: Number,
text1: String,
text2: String,
size1: Number,
font: String,
color1: String,
color2: String,
links: String,
peers: String
}, { collection: 'main' });
mainSchema.statics = {
load: function(l, t, r, b, cb){
console.log(l, t, r, b);
return this.find({
x: { $gt: l, $lt: r },
y: { $gt: t, $lt: b }
}).exec(cb);
}
};
module.exports = mongoose.model('main', mainSchema);
これは条件なしの出力から一つのオブジェクトである:
:ここ[
{
"_id": "577faf952a7c33f2fe44b282",
"id": 4,
"x": 50944,
"y": 54995,
"prio": 1,
"type0": "a",
"type1": "a",
"type2": "a",
"width": 100,
"height": 100,
"text1": "Chemie",
"text2": "",
"size1": 48,
"font": "f1_a ",
"color1": "#000000",
"color2": "#bfdeff",
"links": "14,53445,57328,12,#ff3d3d,k&13,54744,53904,12,#8c8c86,k&12,52557,51870,12,#f2ff12,k&11,51172,49743,12,#2312ff,k&10,48270,47335,12,#49fe6e,k&",
"peers": "1"
}
]
は負荷Methodeのを呼び出すコードであります
var mongoose = require('mongoose');
var main = require('../models/main');
exports.load = function(req, res){
main.load(parseInt(req.query.l), parseInt(req.query.t), parseInt(req.query.r), parseInt(req.query.b), function(err, data) {
res.jsonp(data);
});
};
loadメソッドを呼び出すコードはどこですか? – chridam
@chridamヒントのおかげで、私はコードを追加しました。 – Patrick
ここで間違ったモデルのインスタンスを呼び出していると思います。実際のモデルを 'var Main = require( '../ models/main')と呼ぶことはできないのですが、これは' var main = mongoose.model( 'main'、 "main"、 "main ' ; '最後にmain.jsファイルにエクスポートしてください。' module.exports = mongoose.model( 'main'、mainSchema); '? – chridam