2016-09-21 4 views
0

db 데이터와 동기화 된 테이블 데이터를 유지하려고합니다. 데이터 변경에평균 응용 프로그램 - DB 수집 업데이트 후 테이블 업데이트

: 다음

$scope.changeStatus = function($event,label,status){ 
    var target = $event.currentTarget; 
    target = $(target).parents('tr').attr('id'); 
    $http({ 
     method: 'POST', 
     url: '/update', 
     params: { 
      trgt : target, 
      label : label, 
      labelstatus : status, 
      searchQuery : $scope.search 
     } 
    }) 
    .success(function(data){ 
     console.log(data); 
     $scope.events = data; 
    }) 
    .error(
    function(error){ 
      console.log(error) 
    }); 

} 

:

app.post('/update', function(req,res){ 
    ImportCollection.findOne({ _id : req.query.trgt },function(err,doc){ 
     doc.label.label = req.query.labelname; 
     doc.label.status = req.query.labelstatus; 
     doc.save(); 
}); 

// 여기 UNTIL 모든 작품 잘

if(req.query.searchQuery){ 
ImportCollection.find({$or:[ 
    {'localizedData.0.title' : {'$regex': req.query.searchQuery, $options: 'i' }}, 
    {'licensor.name' : {'$regex': req.query.searchQuery, $options: 'i'}} 
    ]}) 
    .exec(function(err, imports){ 
     if(err) throw err 
     res.json(imports) 
     }) 
    } else{ 
     ImportCollection.find({},function(err, imports){ 
      if(err) throw err 
      res.json(imports) 
      }) 

    } 
}); 

그러나 테이블 데이터를 업데이트해야 응답, 항상 뒤에 하나의 요청입니다. 현재 데이터 = 라이브이므로 QA로 설정하고 아무 반응이 없습니다. 테이블에 여전히 라이브가 표시됩니다. 일단 지금 변경하면 DENIED라고 말하면 테이블에 QA가 표시됩니다. 나는 그것이 지금 더 분명하기를 바란다.

누구나 아이디어가 있습니까? doc.save() 메소드에 콜백 함수로 찾기() 블록을 전달

답변

0

은 나를 위해 일한 :

doc.save(function(err){ 
      if (err) throw error 

      var query = req.query.searchQuery; 
      if(query) { 
       ImportCollection.find({$or:[ 
        {'localizedData.0.title' : {'$regex': req.query.searchQuery, $options: 'i' }}, 
        {'licensor.name' : {'$regex': req.query.searchQuery, $options: 'i'}} 
        ]}).exec(function(err, imports){ 
        if(err) throw err 
        res.json(imports) 
       }); 
      } else{ 
       ImportCollection.find({}).exec(function(err, imports){ 
        if(err) throw err 
        res.json(imports) 
       }); 
      } 


     }); 
관련 문제