2017-08-31 1 views
1

J'ai créé ensemble dans le contrôleur et utilisé cette valeur dans la liste déroulante en AngularJS vueComment enregistrer la valeur Dropdown sélectionnée dans MongoDB

contrôleur:

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

Vue:

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

Dans Serveur .js J'ai écrit la fonction pour sauvegarder

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') 

    }) 

}) 

Mais je ne sais pas comment enregistrer la valeur Dropdown sélectionnée dans mon mongodb. And am Utilisation de mongoclient

Kindly Quelqu'un m'aider à résoudre ce problème.

Répondre

1

Je fixe mon problème.

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

I utilisé ng répétition au lieu de ng-options

+1

Vous devriez probablement être un peu plus clair en posant une question alors. – t1gor

+0

Sûr Merci .. En fait, je suis Nouveau pour le codage .. Je vais m'améliorer pour poser des questions. – Vishnu

0

Si votre menu déroulant est quelque chose comme ceci:

<select id="thedropdown"> 
    <option value="1">one</option> 
    <option value="2">two</option> 
</select> 

Ensuite, vous utiliser quelque chose comme:

var a = document.getElementById("thedropdown"); 
alert(a.options[a.selectedIndex].value); 

Mais une bibliothèque comme jQuery simplifie les choses:

alert($('#thedropdown').val()); 
+0

Ce n'est pas le code server.js – t1gor

+0

Voilà comment vous pouvez le faire en js – WebGuy

+0

de la question: 'Mais je ne sais pas comment sauver la valeur Dropdown sélectionnée dans mon mongodb' – t1gor

2

Je voudrais penser à quelque chose comme ce qui suit:

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') 
      } 
     }); 
    }) 
    }) 

}) 

Veuillez noter que ce code est loin de l'état de production, juste un exemple. Il suppose également que vous utilisez le package mondodb npm pour la connexion. Pour installer, exécutez: npm install mongodb --save

Espérons que cela aide.

Documentation