Я создал функцию списка желаний в своем приложении node / mongo, где пользователи могут сохранять продукты в приложении. Как я структурировал модели: если пользователь сохраняет продукт, этот идентификатор продукта добавляется / ссылается в массиве в пользовательской модели, называемой «лайки».
var UserSchema = new mongoose.Schema({
email: {
type: String,
unique: true,
required: true,
trim: true
},
password: {
type: String,
required: true
},
likes: [{
type: mongoose.Schema.Types.ObjectId,
ref: "Product",
required: true
}]
});
На странице магазина я пытаюсь выяснить, как я узнаю, был ли пользователь сохранен в каждой итерации продукта, и использовать эту информацию для создания условия в шаблоне.
На данный момент это мой маршрут магазина:
router.get('/shop', function(req, res, next) {
Product
.find({})
.exec(function(err, products) {
res.render('products', {
title: 'Shop',
template: 'products',
products: products,
});
});
});
Короче говоря, я хочу, чтобы пользователи могли понравиться продукту (чего я достиг), но затем я хочу, чтобы мой шаблон показывал пользователям, какие продукты им нравились и не нравились в любое время, когда я выводил все продукты в магазине:
{{#each products }}
{{#if the product has been liked by the user already}}
// This thing should happen.
{{/if}}
{{/each}}
Как бы я подошел к проблеме?