0
私はMongoDB/Mongooseを使い慣れていて、ユーザーをサイトコレクションと照合しようとしています。アイデアは、ユーザーがサイトに割り当てられているということです。サイトコレクションに格納されているIDに基づいてこのユーザー名を取得して表示する必要があります。ユーザー名は変更できるので、私はサブ文書を使うことができません。ノード、Mongoose js - 結果を返すことはありません
populateを使用してユーザー名をクエリにバインドしようとすると、クエリは決して結果を返しません。エラーも何もない誰かがそれをハングと呼ぶことができますが、それは非同期なので、バックグラウンドで何をしているのか分かりません。
私の認証システムは、passport.jsです。ここ
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var passportLocalMongoose = require('passport-local-mongoose');
var Account = new Schema({
username: String,
password: String,
isadmin: Boolean,
islocked: Boolean
});
Account.plugin(passportLocalMongoose);
module.exports = mongoose.model('Account', Account);
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var siteSchema = new Schema({
title: String,
locked: Boolean,
userid: {type: mongoose.Schema.Types.ObjectId, ref: 'Account'}
});
var Site = mongoose.model('Site', siteSchema);
module.exports = Site;
そして、私のクエリです:: - しばらくの間、この上で立ち往生されて
Site.find({}.populate('userid'), function (err, postIn) {
if (err) {
throw err
} else {
res.send(postIn);
}
});
任意のアイデアが
は、ここに私のモデルです。
同じ結果です。私は通常、とにかくexecを使用せず、常に結果を得ます。 – Kyle
は編集したばかりです)。見つけた後に.populate –
それは働いた。 –