У меня есть запрос, который находит в модели видео, которая получает просмотры, но мне нужны эти представления в соответствии с userId, например userId = "1xxxxxxxxx13", возможно ли это?
Video.aggregate(
[
{
$group: {
_id: null,
totalViews: {
$sum: {
$cond: [{ $eq: ["$userId", id] }, "$views", 0],
},
},
},
},
],
function (err, data) {
console.log(data);
return data;
}
);
quer, дает мне ноль просмотров, но есть просмотры, есть просмотры видео от этого пользователя с идентификатором пользователя, вот схема
const mongoose = require("mongoose");
const videoSchema = new mongoose.Schema({
....
thumbnail: { type: String, required: false },
title: { type: String, required: false },
userId: { type: mongoose.Schema.Types.ObjectId, ref: "User" },
views: { type: Number },
....
});
videoSchema.index({ title: "text" });
module.exports = mongoose.model("Video", videoSchema);
Мне нужно отфильтровать видео определенного c пользователя