我是新来表达和尝试构建一个restful api,它通过其他属性而不是id来获取元素。
在我发现的教程中,它们通常按id获取元素,示例代码可以是:
router.route('/something/:something_id')
.get(function(req, res) {
Something.findById(req.params.something_id, function(err, something) {
if (err)
res.send(err);
res.json(something);
});
});
架构可能如下:
var SomethingSchema = new Schema({
name: String,
color: String
});
但是我试图通过其他属性来获取,比如
router.route('/something/:something_color')
.get(function(req, res) {
// get all somethings with color = something_color
});
答案 0 :(得分:2)
你需要学习mongodb
和/或mongoose
,它实际上是非常明确的。有Schema.find
函数可以完全按照您的要求执行操作。
router.route('/something/:something_color')
.get(function(req, res) {
// get all somethings with color = something_color
Something.find({ color: req.params.something_color }, function(err, something) {
if (err)
res.send(err);
res.json(something);
});
});
我刚刚在google和第一页上搜索了mongodb express我找到了这个教程:https://zellwk.com/blog/crud-express-mongodb/
希望有所帮助