【问题标题】:Mongodb dont update document using Mongoskin and HapiMongodb 不使用 Mongoskin 和 Hapi 更新文档
【发布时间】:2015-12-09 08:05:04
【问题描述】:

在HAPI和mongoskin中创建了一个服务器,问题是服务器没有更新集合中的文档。

我尝试了很多方法,我正在关注别名文档 hapi 和 mongoskin,但仍然没有成功。

服务器放置:

{
        method: 'PUT',
        path: '/{collectionName}/{id}',
        handler: function(req, reply){
            loadCollection(req.params.collectionName,
                function(collection){
                    collection.updateById(
                        {_id: id(req.params.id)},
                        {$set: req.payload},
                        {safe: true, multi:false},
                        function(e, result){
                            if (e) return reply(e)
                            reply((result === 1) ? {msg: 'success', result: result} : {msg: 'error', result: result})
                        }
                    )
                }
            )
        }
    }

角度控制器:

$scope.item.put().then(function(res){
    //$scope.item._etag.$oid = res._etag;
    //$scope.loadItem();
    toast.msgToast($scope.section+ ' #' +$scope.item._id+ ' ....Atualizado!');
});

【问题讨论】:

    标签: angularjs mongodb hapijs mongoskin


    【解决方案1】:

    您需要使用 Angular 控制器中的 $http 来调用服务器 put 方法:

    $http.put('/thecollectioname/' + $scope.item._id, $scope.item).success(function () {
       toast.msgToast($scope.section+ ' #' +$scope.item._id+ ' ....Atualizado!');
    })
    

    【讨论】:

    • 感谢您的回答。但是我已经有一个带有htttp的功能并给出了同样的问题,测试只是把你的,错误是一样的:{“msg”:“error”,“result”:0}
    • 这不是错误,您没有得到任何查询结果,但一切正常。检查你正在做的查询,检查ID是否正确等等......
    • 然后,但不是这个记录在 mongo 中的更新。
    猜你喜欢
    • 2014-07-05
    • 2015-06-13
    • 2013-12-13
    • 1970-01-01
    • 1970-01-01
    • 2012-07-06
    • 2015-10-04
    • 1970-01-01
    • 2015-09-07
    相关资源
    最近更新 更多