我在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();
});
然而,我没有运气。如何将值插入数据库?
答案 0 :(得分: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());
});