то, о чем вы просите, напрямую не поддерживается, но может быть достигнуто путем добавления другого шага фильтра после возвращения запроса.
во-первых, .populate( 'tags', null, { tagName: { $in: ['funny', 'politics'] } } )
определенно то, что вам нужно сделать, чтобы отфильтровать теги документы. то после возвращения запроса вам нужно будет вручную отфильтровать документы, у которых нет документов tags
, которые соответствуют критериям заполнения. что-то вроде:
query....
.exec(function(err, docs){
docs = docs.filter(function(doc){
return doc.tags.length;
})
// do stuff with docs
});
Вы можете ссылаться на элемент DOM с помощью .get (0)
или [0]
, например $ ('# foo') [0]
при условии, что существует только один.
Это то, для чего метод get () был разработан командой JQuery, примите во внимание :
var elem = $('#a')[0];
Или
var elem1 = $('#a').get(0);
var elem2 = document.getElementById('a');
alert(elem1 === elem2);
или более длинная версия:
<!DOCTYPE HTML>
<html>
<body>
<a id='a'></a>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js" type="text/javascript"></script>
<script>
var elem1 = $('#a').get(0);
var elem2 = document.getElementById('a');
alert(elem1 === elem2);
</script>
</body>
</html>