Sails.js:如何在mysql数据库中插入值

时间:2015-07-03 12:47:49

标签: sails.js

我正在使用Linux,我正在尝试通过sails.js将我的Textbox值插入到mysql中。当我上网时,我没有得到任何明确的答案。

我已将My Controller附加到创建功能

module.exports = {

create :function(req,res){

    if(req.method=="POST"&&req.param("User",null)!=null) 
    {

        var insert = "INSERT INTO User VALUES("+req.params.userId+",'"+req.params.loginName+"','"+req.params.userName+"','"+req.params.password+"','"+req.params.userMail+"')";

        User.query(insert,function(err,record){
        if(err)
        {
            console.log("Error");
        }
        else
        {

            console.log(record);
            res.redirect('User/index');

        }

        }); 
    }   

},

这是我的create.ejs

<form action="/user/create" method="POST">
    <table>
        <tr><td>UserId:<td><input type="text" name="User[userId]"><br/>
        <tr><td>LoginName:<td><input type="text" name="User[loginName]"><br/>
        <tr><td>UserName:<td><input type="text" name="User[userName]"><br/>
        <tr><td>Password:<td><input type="text" name="User[password]"><br/>
        <tr><td>UserMail:<td><input type="text" name="User[userMail]"><br/>
        <tr><td><td><input type="submit" value="Register">
</form>

connection.js是:

module.exports.connections = {

mysql: {
    module    : 'sails-mysql',
    host      : 'localhost',
    port      : 3306,
    user      : 'root',
    password  : 'assyst',
    database  : 'User' 

},  

};

如何使用mysql在sails.js中进行基本的crud操作。

2 个答案:

答案 0 :(得分:1)

如果您按User创建sails generate api user API,则会自动UserController.js位于api/controllersUser.js位于api/models

User.js修改为api/models/User.js

module.exports = {

  attributes  : {
    userId      : {type: 'string'},
    loginName   : {type: 'string'},
    userName    : {type: 'string'},
    password    : {type: 'string'},
    userMail    : {type: 'string'}
  }
};

默认情况下,它会公开Blueprint API,您可以通过以下方式向用户模型发布内容:

<form action="/user" method="POST">
    <table>
        <tr><td>UserId:<td><input type="text" name="userId"><br/>
        <tr><td>LoginName:<td><input type="text" name="loginName"><br/>
        <tr><td>UserName:<td><input type="text" name="userName"><br/>
        <tr><td>Password:<td><input type="text" name="password"><br/>
        <tr><td>UserMail:<td><input type="text" name="userMail"><br/>
        <tr><td><td><input type="submit" value="Register">
</form>

这是Sails的基本CRUD。

答案 1 :(得分:0)

这是我在带有Mysql的sails.js中的插入操作

Insert:function(req,res)
{
    if(req.method=="POST")
        {
            console.log("Post");
            var userId = req.param("userId");
            var userName = req.param("userName");
            var loginName =req.param("loginName");
            var password =req.param("password");
            var userMail =req.param("userMail");
            console.log(userName);

            var insert = "INSERT INTO User(UserId,LoginName,UserName,password,UserMail) VALUES("+userId+",'"+loginName+"','"+userName+"','"+password+"','"+userMail+"')";

            User.query(insert,function(err,record)
            {

                if(err)
                {
                    console.log(err);
                }
                else
                {
                    console.log(record);
                    res.redirect('User/index');
                }
            });

        }
        else
        {
            res.render("create");
        }
},