如何使用 mongoose 从 mongodb 中选择值

Posted

技术标签:

【中文标题】如何使用 mongoose 从 mongodb 中选择值【英文标题】:how to select values from mongodb using mongoose 【发布时间】:2017-08-21 09:10:33 【问题描述】:

我现在正在使用 meanstack 我尝试在 angularjs 的帮助下从 mongodb 获取数据我在这项技术中非常新。我现在正确插入值我想从 mongodb-mongoose 检索

我现在正在使用 meanstack 我尝试在 angularjs 的帮助下从 mongodb 获取数据我在这项技术中非常新。我现在正确插入值我想从 mongodb-mongoose 检索

var app = angular.module("App", [ ]);

  
app.controller('MongooseController', ['$scope', '$http' ,'$window', '$filter',
 
 
function ($scope, $http, $window, $filter) 
      

    debugger;
    
    var refresh = function () 
        $http.get('/ViewUser').then(function (response) 
            $scope.ViewUsers = response.data;
        );
 
    ;
    refresh();

    $scope.AddNewDetails = function ( ) 

        $http.post('/AddNewDetails', $scope.user).then(function (response) 
            

        );
    ;
 

]);









server
var express = require('express');
var app = express();
var mongoose = require('mongoose');
var Schema = mongoose.Schema();
var bodyParser = require('body-parser');

 


app.use(express.static(__dirname + "/public"));

app.use(bodyParser.json());
mongoose.connect('mongodb://localhost/crud');

var Schema = new mongoose.Schema(
    email: String,
    name: String,
    age: Number,
 

    date:  type: Date, default: Date.now 
   

);

var user = mongoose.model('emps', Schema);

app.get('/ViewUser', function (req, res) 

    user.find(, function (err, docs) 
        console.log(docs);
    );

);
 
app.post('/AddNewDetails', function (req, res) 

 
    new user(
        email: req.body.email,
        name: req.body.name,
        age: req.body.age
       


    ).save(function (err, doc) 

        if (err) 
            res.json(err);
        
        else 
             
            res.send('Successfully inserted!');
        
    );
);





app.listen(8082);
console.log("server running on port 8082");
<!DOCTYPE html>
<html ng-app="App">
<head>

    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.3/angular.min.js"></script>

    <script src="Controller/MongooseCrud.js"></script>
</head>

<body >

    <div ng-controller="MongooseController">
  
     

        <label for="email">Email: </label>
	  <input type="email" name="email"  ng-model="user.email" /><br />
	<label for="name">Name: </label>
	  <input type="text" name="name" ng-model="user.name" /><br />
	<label for="age">Age: </label>
	  <input type="number" name="age" ng-model="user.age"/><br />
	  <input type="Button"  value="submit" ng-click="AddNewDetails()">

        <ul ng-repeat="ViewUser in ViewUsers">
            <li>ViewUser.name</li>
        </ul>




    </div>
     


</body>
</html>

【问题讨论】:

【参考方案1】:

应该是,

User.find(, function(err, docs) 
 console.log(docs);

还将您的请求更改为,

 $http.get('/ViewUser').then(function (response) 
            $scope.ViewUsers = response.data;
 );

【讨论】:

你看到了什么 您在控制台中看到了什么? console db 值已显示,但我无法进入 UI 让我们continue this discussion in chat. 任何错误@Sajeetharan

以上是关于如何使用 mongoose 从 mongodb 中选择值的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 mongoose 从 mongoDB 中获取一定数量的对象? (Node.js)

如何使用 mongoose 从 MongoDb 获取数据?

如何从 1 分钟的嵌套数组数据中聚合 OHLC 5 分钟(mongodb、mongoose)

如何使用 Mongoose 在 MongoDB 中插入 JSON 数组

使用 Mongoose 从 Decimal128 中提取十进制 - MongoDB

如何使用 mongodb 和 mongoose 从帖子模型中计算整体帖子活动(喜欢、不喜欢、评论)和用户模型中的参考总和