使用Eloquent发布更新后的值

时间:2014-04-16 20:28:28

标签: php ajax angularjs laravel eloquent

我在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 个答案:

答案 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());
});

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