我正在编写一个定义两(2)个模型的MEAN堆栈应用程序。
var Job = db.model('Job', {
...
kind: {
baby: false,
pet: false,
house: false,
}
});
var Person = db.model('Person', {
...
kind: {
baby: false,
pet: false,
house: false,
}
});
我将kind字段创建为子文档,因为存储在此字段中的内容是我的angularjs app中的类型复选框输入。
我的问题与Job的查询有关,Person的类型与true相同。
例如,如果一个人在他们的个人资料中检查了婴儿和宠物,那么我想查询所有有婴儿和宠物的工作是真的。
这是在mongodb中存储来自html表单的复选框输入的方法吗?如果是这样, 什么是查询字符串来实现我的结果。如果没有,那么正确的方法是什么 在mongodb中存储复选框输入?
答案 0 :(得分:0)
我不知道人员和工作集合中涉及的数据量,也不知道应用程序的查询/主要目标的目的。基于此,这里有一些想法:
ng-change
和服务数据上的自定义角度过滤器来实现您的目的,而不是不断查询数据库; 如果您确实需要/需要在每次选中/取消选中复选框时查询数据库,那么您可以使用复选框值向服务器发送请求(类似{baby: false, pet: false, house: false}
req.body
})。收到请求后,只需照常查询并返回匹配的文档:
var Job = mongoose.model('Job');
Job.find({kind: req.body}, function (err, docs) {
if(err) {
// handle err
}
res.json(docs);
});
希望有所帮助,但我不能更具体。