我有视频模型(水线)
视频
-title
-description
-matches (array)
[0]
- MatchTitle
- MatchDescription
[1]
...
[N]
如何查找包含与标题匹配的视频" ABC"例如?
我写的不是最好的解决方案,因为它会从数据库中检索所有数据
Video.find({is_html5:true}).done(function(err, videos) { // get all videos
async.forEach(videos, function(video, callback) {
var isFound = false;
async.forEach(video.matches, function(videoMatch, matchCallback) { // get video matches
if(videoMatch.gs_id === match.gs_id && !isFound) {
match.relatedVideos.push(video.id);
isFound = true;
}
matchCallback();
}, function(err3) {
callback();
});
}, function(err2) {
cb();
});
}, function(err1) {
cb();
});
答案 0 :(得分:0)
如何使用mongo的魔法并按数组项的属性查找视频?
Video.find({'matches.matchTitle' : 'ABC'}).exec(...);
// or using regex (if you want to match a substring)
Video.find({'matches.matchTitle' : { $regex: /ABC.*/ }}).exec(...);
这有多大帮助。