如何使用布尔值查询 MongoDB 中的字段和 return 布尔值是真还是假
How to query a field in MongoDB with a boolean value and return a boolean whether it's true or false
查看我的简单合集:
{_id: "01",
name: "Jimmy",
canDrive: false }
找到 document
后我想做的是操作 DOM 并在字段 canDrive
值为 [=17 时显示 <div class="driving-tutorial>
=] 并在值为 true
时隐藏它
在流星中是这样的:
Template.profile.rendered = function() {
if (<query>,<field> == true){
$('.driving-tutorial').hide();
else {
$('.driving-tutorial').show(); }
您可以使用带有 Mongo 选择器的 findOne()
method which finds the first document that matches the selector/query object in the arguments. Thus you can call findOne()
来实现此逻辑,该选择器是一个对象,用于指定所需文档的一组必需属性以匹配文档。例如这个选择器
var doc = Model.findOne({ canDrive: false });
将匹配此文档
{
_id: "01",
name: "Jimmy",
canDrive: false
}
然后您可以在模板函数中使用上述逻辑来检查文档和字段是否存在,同时请记住,如果找不到,findOne()
将 return 为 null匹配文档,如果文档尚未加载或已从集合中删除,通常会发生这种情况:
Template.profile.rendered = function() {
var doc = Model.findOne({ canDrive: false });
if (doc && !doc.canDrive){
$('.driving-tutorial').show();
else {
$('.driving-tutorial').hide();
}
}
您还可以使用 jquery toggle()
方法的第二个版本,它接受布尔参数。如果此参数为true
,则显示匹配的元素;如果 false
,元素被隐藏:
Template.profile.rendered = function() {
var doc = Model.findOne({ canDrive: false }),
canDrive = (doc && !doc.canDrive);
$('.driving-tutorial').toggle(canDrive);
}
查看我的简单合集:
{_id: "01",
name: "Jimmy",
canDrive: false }
找到 document
后我想做的是操作 DOM 并在字段 canDrive
值为 [=17 时显示 <div class="driving-tutorial>
=] 并在值为 true
在流星中是这样的:
Template.profile.rendered = function() {
if (<query>,<field> == true){
$('.driving-tutorial').hide();
else {
$('.driving-tutorial').show(); }
您可以使用带有 Mongo 选择器的 findOne()
method which finds the first document that matches the selector/query object in the arguments. Thus you can call findOne()
来实现此逻辑,该选择器是一个对象,用于指定所需文档的一组必需属性以匹配文档。例如这个选择器
var doc = Model.findOne({ canDrive: false });
将匹配此文档
{
_id: "01",
name: "Jimmy",
canDrive: false
}
然后您可以在模板函数中使用上述逻辑来检查文档和字段是否存在,同时请记住,如果找不到,findOne()
将 return 为 null匹配文档,如果文档尚未加载或已从集合中删除,通常会发生这种情况:
Template.profile.rendered = function() {
var doc = Model.findOne({ canDrive: false });
if (doc && !doc.canDrive){
$('.driving-tutorial').show();
else {
$('.driving-tutorial').hide();
}
}
您还可以使用 jquery toggle()
方法的第二个版本,它接受布尔参数。如果此参数为true
,则显示匹配的元素;如果 false
,元素被隐藏:
Template.profile.rendered = function() {
var doc = Model.findOne({ canDrive: false }),
canDrive = (doc && !doc.canDrive);
$('.driving-tutorial').toggle(canDrive);
}