更新数据库的一行中的单个字段

时间:2016-03-16 18:07:06

标签: php laravel laravel-5.2

我试图更新“等待”状态。活跃的'。

这是我的编辑按钮:

<td>
    @if($c->status == 'active')
        <a href="{{ Route('admin.makeNotActive', ['id' => $c->id]) }}"><i class="fa fa-check fa-2x"></i></a>
    @else
        <a href="{{ Route('admin.makeActive', ['id' => $c->id]) }}"><i class="fa fa-times fa-2x"></i></a>
    @endif
</td>

我的路线:

get('admin/classified/activate/{id}', [
    'uses' => 'AdminController@makeNotActive',
    'as' => 'admin.makeNotActive',
]);

get('admin/classified/deactivate/{id}', [
    'uses' => 'AdminController@makeActive',
    'as' => 'admin.makeActive',
]);

和我的方法:

public function makeActive($id)
{
    //dd('Trying to ACTIVATE');
    $c = Classified::findOrFail($id);
    $c->update(['status' => 'active']);
    return back();
}

public function makeNotActive($id)
{
    // dd('Trying to DEACTIVE');
    $c = Classified::findOrFail($id);
    $c->update(['status' => 'pending']);
    return back();
}

当我取消注释dd时,它正确地击中它们但它没有更新。我对Laravel很新,所以可能做了一些显而易见的事情,但我看不到它!

提前致谢。

1 个答案:

答案 0 :(得分:1)

public function makeActive($id)
{
   //dd('Trying to ACTIVATE');
   $c = Classified::findOrFail($id);
   $c->status ='active';
   $c->save();
   return back();
}

这应该适合你。