我想使用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);
答案 0 :(得分:1)
如果您尝试向API发送信息,则应使用__proto__
或类似信息。 $http.post
用于检索数据,而不是发送数据。
也就是说,看起来您实际上是在尝试从API获取信息。但是,您的GET请求似乎没有映射到可用的功能。应该这样:$http.get
是这样的:你的路线中是.get(promusages.read)
吗?
这是您定义的唯一功能。虽然很难说,因为我不确定.get(promusages.find)
在这里是什么。