Sails Js Destroy记录

时间:2017-05-10 12:55:31

标签: javascript sails.js

我想从我的SQL数据库中删除一条记录。而且它的变化是因为,当我试图找到记录时,我获得了成功。但是当我尝试删除它时,我有一个错误。

Service.find({id:serviceId}).exec(function(err, srv){

  if(err){res.json({err:err})}

  // some script to verify if the user can remove this record 
  // ....

  if(canRemove){

    Service.destroy({id: serviceId}).exec(function(err){
      if(err){res.json({err:err})}
      res.json('record removed');
    })

  }

})

我错过了什么吗?

编辑:错误: enter image description here

2 个答案:

答案 0 :(得分:0)

代码似乎在res.jsonif(err)处崩溃。

更改此代码:

Service.destroy({id: serviceId}).exec(function(err){
  if(err){res.json({err:err})}
  res.json('record removed');
})

到此:

Service.destroy({id: serviceId}).exec(function(err){
  if(err){
    // sails.log.error('Error', err);
    return res.serverError('Something went wrong');
  }
  res.json('record removed');
})

答案 1 :(得分:0)

我最终找到了解决方案。

因为当我更改了“return res.serverError('出错了')”时,“返回res.serverError(错误)”我收到了这条消息:

Error (E_UNKNOWN) :: Encountered an unexpected error
: ER_BAD_FIELD_ERROR: Champ 'model.undefined' unknown in order clause
at ....

所以我通过添加一个主键来进行一些研究和编辑我的服务模型@ sgress454在这篇文章中说:Cannot update attributes in Sails.js model instance然后我能够完美地删除记录。

感谢您的帮助。