从按钮传递用户ID以在数据库中禁用该用户


Passing a user ID from a button to disable that user in the database

如果单击按钮,我想通过将用户的激活字段从1更改为0来禁用用户帐户。

这是我的路线:

Route::post('admin/useradmin/{id}', array('as' => 'user-admin-disable-post', 'uses' => 'AdminController@postDisable'))->before('auth');

我的控制器:

public function postDisable($id)
 {
  $user = User::find($id);
  $user = $user->first();
  $user->activate = 0; 
        if($user->save())
        {
            return Redirect::route('user-admin')
                    ->with('global', 'The users account has been disabled');
        }
        return Redirect::route('user-admin')
                ->with('global', 'Error disabling user account');
}

视图,这个按钮将被点击,然后将用户id传递给控制器以执行操作:

<a href="{{URL::route('user-admin-disable-post', $user->id)}}" class="btn btn-info btn-xs pull-left" style="margin-right: 3px;">Disable</a>

当我点击按钮时,它给了我一个未找到的错误,我看到函数没有被执行,我该如何解决这个问题?

方法User::find($id)已经返回用户对象,之后无需调用$user->first();。–@martinstoeckli

我还更改了路线中的post to get

这解决了我使用的问题