如何在mongodb中保存选定的Dropdown值

时间:2017-08-31 11:14:09

标签: angularjs mongodb save dropdown

我在控制器中创建了数组,并在angularjs视图的下拉列表中使用了该值

控制器:

$scope.menus = ['Home','WorkFlow','Statistics','Users','Projects','Setting']; 

视图:

<select name="selectedRole" ng-model="selectedRole" ng-options ="x.role for x in roles">
     <option value="">Role</option>
</select>

在Server.js中我编写了保存函数

app.post('/addUser', function(req, res) {

 userCollection.save(req.body, (err, result) => {
    if (err) return console.log(err)

    console.log('Roles Added');
    res.redirect('/users')
    console.log('result')

  })

})

但我不知道如何在我的mongodb中保存选定的Dropdown值。我正在使用mongoclient

请帮助我解决这个问题。

2 个答案:

答案 0 :(得分:2)

我会想到以下内容:

app.post('/addUser', function(req, res) {

 userCollection.save(req.body, (err, result) => {
    if (err) return console.log(err)

    const MongoClient = require('mongodb').MongoClient;

    MongoClient.connect(db.url, (err, database) => {
      if (err) return console.log(err)

      database.collection('users').insert({
        user: <blah-blah>,
        role: req.body.role
      }, (err, result) => {
          if (err) { 
            res.send({ 'error': 'An error has occurred' }); 
          } else {
            console.log('Roles Added');
            res.redirect('/users')
          }
        });
    })
  })

})

请注意这段代码远离生产状态,只是一个例子。它还假设您使用mondodb npm包进行连接。要安装,请运行:npm install mongodb --save

希望有所帮助。

Documentation

答案 1 :(得分:1)

我解决了我的问题。

   <select name="role" ng-model="role" >
                    <option ng-repeat="role_type in roles"  value="{{role_type._id}}">{{role_type.role}}</option>
                    </select>

我使用ng-repeat代替ng-option