如何编写查询查询来比较Express和MongoDB中的两个字段?

时间:2015-07-10 12:19:50

标签: node.js express

我想使用Express比较两个字段。我尽了最大努力但是我遇到了错误。

我附上了我的架构,路由和控制器。这些是API调用,我想知道如何从AngularJS $http.get方法传递两个字段。我已经将我的AngularJS控制器与API调用一起包含在内

架构:

var PromusageSchema = new Schema({

    StoreID: {
        type: String,
        default: '',
        trim: true
    },
    StoreName: {
        type: String,
        default: '',
        trim: true
    },
});

mongoose.model('Promusage', PromusageSchema);

控制器

exports.promusageByEMAIL = function(req, res, next, id) { 
    Promusage.find({customer_Email:id})
        .populate('user', 'displayName')
        .exec(function(err, promusage) {
            if (err) return next(err);

            if (!promusage) return next(new Error('Failed to load Promusage ' + id));
        req.promusage = promusage;
        next();
    });
};

路线

app.route('/promusages1/:promusageEmail')
    .get(promusages.read)
    .put(promusages.update)
    .delete(promusages.delete);

    // Finish by binding the Promusage middleware
app.param('promusageEmail', promusages.promusageByEMAIL);

1 个答案:

答案 0 :(得分:1)

如果您尝试向API发送信息,则应使用__proto__或类似信息。 $http.post用于检索数据,而不是发送数据。

也就是说,看起来您实际上是在尝试从API获取信息。但是,您的GET请求似乎没有映射到可用的功能。应该这样:$http.get是这样的:你的路线中是.get(promusages.read)吗?

这是您定义的唯一功能。虽然很难说,因为我不确定.get(promusages.find)在这里是什么。