2014-04-16 23 views
0

我正在學習Laravel上的AngularJS,並且我正在製作一個簡單的應用程序。到目前爲止,該應用程序在完成區域或未完成區域中顯示來自數據庫的行。如果用戶點擊該項目,它將移動到相反的區域。發佈更新的價值使用雄辯

$scope.move = function(item) { 
    item.has_item = !item.has_item; 
}; 

上述移動上單擊該項目,但持久性我想補充:現在

$scope.move = function(item) { 
    var newState = !item.completed; 
    $http.post('/items', item).success(function() { 
     item.completed = newState; 
    }); 
}; 

,我只是需要一個途徑來接受這個職位並插入完成數據庫更新後的值。

我已經試過:

Route::post('items', function() 
{ 
    $completed = Input::get('completed'); 
    return $completed->push(); 
}); 

不過,我有沒有運氣。我需要做什麼才能將值插入到數據庫中?

+1

'$ completed'將** **不會是一個對象,這將是一個字符串(或空,如果不存在的話)。當你沒有使用Laravel進行任何正確的數據庫調用時,很難回答你。 –

回答

0
$scope.move = function(item) { 
    item.has_skill = !item.has_skill; 
    $http.post('/items', item).success(function(data) { 
     item = data; 
    }); 
}; 

//in controller 
$http.get('/items').success(function(data) { 
    $scope.items = data; 
}); 

<ul> 
    <li ng-repeat="item in items" ng-click="move(item)">{{item.skill_name}}</li> 
</ul> 

Route::post('items', function() { 
    $id = Input::get('id'); 
    $item = Skill::find($id); 
    $item->has_skill = Input::get('has_skill'); 
    $item->save(); 
    return Response::json($item); 
}); 

Route::get('items', function() { 
    return Response::json(Skill::all()); 
}); 

http://jsbin.com/bavawiko/1/edit

+0

當我單擊一個項目時,仍然出現'500(內部服務器錯誤)'。是否還有其他代碼需要幫助?感謝您抽出寶貴的時間。 – Chris

+0

什麼是您的數據庫架構,您是否定義了一個模型? –

+0

我沒有看到完整的字段! –