gpt4 book ai didi

javascript - 使用 sails js 删除记录时 Mongo 出错

转载 作者:太空宇宙 更新时间:2023-11-04 00:52:00 25 4
gpt4 key购买 nike

我是 sails.js 的新手,尝试使用 mongodb 和 sails.js 创建 CRUD,从记录列表中删除记录时遇到一些问题。在这里我附上我的所有工作文件,请指导我

// controller file function 
removePost: function(req, res)
{

var id = req.query.id;
//var id = req.param("id", null);
console.log(id);
sails.log(id);
Dashboard.remove({'_id' : id } , function(error){
console.log("Come in dataase" + error);
})
res.redirect('dashboard/index');

}
<小时/>

这是我的 ejs 文件

 <div class="col-sm-9">
<h3>Latest Post</h3>
<% result.forEach( function( model){ %>
<br>
<div class="media">
<i class="fa fa-check-square-o pull-left fa-2x"></i>
<a href="/dashboard/removePost?id=<%=model.id%>"><i class="fa fa-trash-o pull-left fa-2x"></i></a>
<div class="media-body">
<h3 class="media-heading"> <%=model.title %> </h3>
<%=model.description %>
</div>
</div>
<% }); %>

</div>
<小时/>

这是我的路线

module.exports.routes = {

'/': {
view: 'homepage'
},
'/about':{
view: 'about/index'
},
'get /register': 'RegisterController.index',
'post /register/create' : 'RegisterController.create',
'get /dashboard/create' : 'DashboardController.create',
'get /Dashboard': 'DashboardController.index',
'get /dashboard/removePost:id': 'DashboardController.removePost'
};

当点击删除链接时,它会调用上面的 Controller 函数removePost()

终端错误显示:

error: Sending 500 ("Server Error") response: 
TypeError: Object #<bound> has no method 'remove'
at Object.module.exports.removePost (/var/www/html/sailsTemplate/api/controllers/DashboardController.js:49:13)
at bound (/usr/lib/node_modules/sails/node_modules/lodash/dist/lodash.js:729:21)
at routeTargetFnWrapper (/usr/lib/node_modules/sails/lib/router/bind.js:179:5)
at callbacks (/usr/lib/node_modules/sails/node_modules/express/lib/router/index.js:164:37)
at param (/usr/lib/node_modules/sails/node_modules/express/lib/router/index.js:138:11)
at param (/usr/lib/node_modules/sails/node_modules/express/lib/router/index.js:135:11)
at pass (/usr/lib/node_modules/sails/node_modules/express/lib/router/index.js:145:5)
at nextRoute (/usr/lib/node_modules/sails/node_modules/express/lib/router/index.js:100:7)
at callbacks (/usr/lib/node_modules/sails/node_modules/express/lib/router/index.js:167:11)
at /usr/lib/node_modules/sails/lib/router/bind.js:187:7
at alwaysAllow (/usr/lib/node_modules/sails/lib/hooks/policies/index.js:207:11)
at routeTargetFnWrapper (/usr/lib/node_modules/sails/lib/router/bind.js:179:5)
at callbacks (/usr/lib/node_modules/sails/node_modules/express/lib/router/index.js:164:37)
at param (/usr/lib/node_modules/sails/node_modules/express/lib/router/index.js:138:11)
at param (/usr/lib/node_modules/sails/node_modules/express/lib/router/index.js:135:11)
at pass (/usr/lib/node_modules/sails/node_modules/express/lib/router/index.js:145:5) [TypeError: Object #<bound> has no method 'remove']
<小时/>

任何人的帮助将不胜感激提前致谢

最佳答案

在 Controller 中,您正在使用Dashboard.remove(),但此方法不存在。 Use Dashboard.destroy().exec() instead .

Dashboard.destroy({'_id' : id }).exec(function(err){
console.log('The record has been deleted');
})

关于javascript - 使用 sails js 删除记录时 Mongo 出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31986467/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com