ここで複数のパラメータは、私が持っているルートであります遊びます。 'user'コレクション内のユーザーを検索します。ユーザーが見つからない場合(ユーザーがログインしていない場合)、エラーが戻されます。それ以外の場合は、/ homeページが表示されます。マングースfindOne
ここでは、管理者権限を持つユーザーのみがページにアクセスできるように、私のWebサイトの管理セクションを別にしたいと考えています。
router.get('/admin', function (req, res) {
User.findOne({_id: req.user._id, admin: true}, function (err, user) {
if (err) return next(err);
res.render('admin', {user: user});
});
});
私は何をするためのコードを取得しようとしていることは2つのパラメータを探すことです:私はこのような何かやってみたユーザーがログインしているかどうかを、そして彼らのそのユーザーのドキュメント内かどうか'admin'は 'true'に設定されています。明らかに上記のコードは機能しません。これをよりうまく動作させる方法はわかりません。
EDIT:私のユーザーのスキーマ:
var schema = mongoose.Schema;
var UserSchema = new schema ({
username: {type: String, unique: true},
email: {type: String, unique: true, lowercase: true, required: true},
password: {type: String, minlength: passMinLength, required: true},
admin: {type: Boolean, default: false},
profile: {
firstName: {type: String, default: ''},
lastName: {type: String, default: ''}
}
});
ユーザースキーマを貼り付けることはできますか? – Nivesh
お返事ありがとうございます。ユーザーのスキーマを含めるように質問を編集しました。 – MonkeyOnARock