不要重复搜索用户我有以下代码,但lalavel 5.1 beforeFilter已弃用。如何更换它。
函数find仅适用于编辑,更新和销毁方法
class UserController extends Controller {
private $user;
public function __construct(){
$this->beforeFilter('@find',['only' => ['edit', 'update', 'destroy']]);
}
public function find(Route $route){
$this->user = User::find($route->getParameter('user'));
}
...
public function edit()
{
return view('usuario.edit', ['user' => $this->user]);
}
public function update(UserUpdateRequest $request)
{
$this->user->fill($request->all());
$this->user->save();
Session::flash('message', 'Ok update');
return Redirect::to('/user');
}
public function destroy()
{
$this->user->delete();
Session::flash('message', 'delete ok');
return Redirect::to('/user');
}
答案 0 :(得分:2)
beforeFilter()
(以及所有过滤器)已被中间件取代。总的来说,它是一个新的应用程序层,您应该read the documentation来解决您的特定用例,但语法和功能非常相似:
// Before
$this->beforeFilter('filtername', [...options...]);
// After
$this->middleware('middlewarename', [...options...]);