奇怪的mongodb响应格式

时间:2017-01-23 11:37:32

标签: javascript arrays node.js mongodb

我有一个mongodb数据库文档,其中包含一个数组

{
   "_id":ObjectId("588116a66f7d758b144177f7"),
   "name":"Michael",
   "email":"mick@shift.com",
   "company":"Shift",
   "username":"MichaelP",
   "password":"$2a$10$unH/7anPylxk1x5zk6/so.YcByZqQoBdFi9IlWnHty2gNouUrt7ea",
   "position":"Manager",
   "shifts":[
      "day",
      "day",
      null,
      "night",
      null,
      null,
      null,
      "15"
   ],
   "score":[
      null,
      "550",
      null
   ],
   "__v":0
}

我想在我的网页上打印shifts[7]。我是node.js的新手,但我可以打印{{username}}{{company}}罚款shifts[7]打印为'{ '0': '1', '1': '5' }'我想我在index.js中是一个简单的解决方案但我似乎无法弄明白。

我在下面添加一个缩短版的index.js代码并感谢您的帮助。

router.get('/hub',ensureAuthenticated, function(req, res, next){
  var collection = db.collection('users');
  var totalHours= req.user.shifts[7] + '';
  var totalhour=0;

  res.render('hub', {username: req.user.username, 
    company: req.user.company, 
    position: req.user.position, 
    totalHours: totalhour 
  });
});

1 个答案:

答案 0 :(得分:0)

我认为问题在于您使用的是req.user而不是用户响应,并且您没有获得单个对象进行响应,因此您应该通过_id获取单个用户值,然后将其用于进一步的过程。 ...

public class singlylinkedlist {
link head;
static class link
{
    int data;
    link nextNode;
    link(int dat)
    {
        data=dat;
        nextNode=null;
    }
}
public static void insertbegin(link head,int x)
{
    link newnode=new link(x);
    newnode.nextNode=head;
    head=newnode;
}
static void display(link head)
{
    if(head==null) System.out.println("empty list");
    else
    {
        link temp=head;
        while(temp!=null)
        {
            System.out.println(temp.data);
            temp=temp.nextNode;
        }
    }
}
public static void main(String args[])
{
    singlylinkedlist link=new singlylinkedlist();
    link.head=new link(2);
    insertbegin(link.head,1);
    display(link.head);
    }
}

},函数(ERR){ 的console.log( “ERR”,ERR)});

router.get('/hub/:id',ensureAuthenticated, function(req, res, next){
var collection = Restangular.One('users',req.user._id);
    collection.get().then(function(err,user){
    var totalHours= users.shifts[7] + '';
    var totalhour=0;
    $scope.user=user;
    $scope.totalHours = user.shift[7];

表示html中的总小时数,只需打印{{totalHours}}