私はExpress、Passport、Handlebars、Mongoose/MongoDBを使ってウェブサイトのクイズを作成しています。私は、同じユーザーが同じクイズを2回服用しないようにしようとしています。クイズは1つしかありません。彼らはそれを終えると、再びそれを取ることができません。誰かが自分のコードに何が間違っているのか教えてもらえますか?ユーザーがクイズを2回取ることを許可しない
router.get('/tools/start-health-assessment', function(req, res) {
User.find({
_id: req.user._id,
assessmentTaken: true
}).then(function(err) {
if (err) {
throw err;
} else {
res.redirect('/users/dashboard');
}
});
});
このルートでは、クイズに先行する手順ページが表示されます。私の論理は、このルート内でMongoクエリを使用することです。 assessmentTaken
が真の場合、ユーザーをダッシュボードに戻すのが理想的です。私が経験している問題は、上記のルートに乗ろうとするたびにローディングバーが決して終わらない、ウェブページの停止です。
なぜMongoDBのから戻って来るもの読んでいませんか?同様に、 'function(err、user)...' –