我应该在哪里将请求发送到模型或控制器中的node.js中的数据库?

时间:2019-03-03 21:36:57

标签: node.js rest model-view-controller

我正在为一个大型项目构建REST Api(我是Node的新手,只是一个初级开发人员),我想知道我应该将查询发送到模型或控制器中的数据库的确切位置。 我使用的是mysql,没有ORM,这是我用于在控制器中发送查询的代码。

example.controller.js

get_user_rights : async (req,res)=> {
    //checking the validity of the params sent
    if(isNaN(req.params.id_user)||!req.params.id_user)
        return res.status(400).json({message:'please send all the data required.'}).end()
    db.query(param.query_get_user_rights,[req.params.id_user],(err,rows)=>{
        //on error
        if(err){
            return res.status(500).json({error:err}).end()
        } else {
            //on empty
            if(rows.length==0)
                return res.status(204).end()
            else {
                //on result
                return res.status(200).json({data:{rows}}).end()
            }
        }
    })
}

这是放置在控制器中的正确选择还是应该在模型中编写db.query并调用它? 抱歉,我是MVC REST api的新手,我在网络上发现了多种不同的方法。

0 个答案:

没有答案