php – laravel中没有return语句的重定向

前端之家收集整理的这篇文章主要介绍了php – laravel中没有return语句的重定向前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这个blogsController,创建功能如下.
public function create() {
  if($this->reqLogin()) return $this->reqLogin();
  return View::make('blogs.create');
 }

在BaseController中,我有这个功能,它检查用户是否登录.

public function reqLogin(){
      if(!Auth::check()){
        Session::flash('message','You need to login');
        return Redirect::to("login");
      }
    }

这段代码工作正常,但它不是我需要的创建函数,如下所示.

public function create() {
  $this->reqLogin();
  return View::make('blogs.create');
 }

我可以这样做吗?

除此之外,我可以设置身份验证规则,就像我们在Yii框架中一样,在控制器的顶部.

您应该将检查放入过滤器,然后只有当用户首先登录时才让用户到达控制器.

过滤

Route::filter('auth',function($route,$request,$response)
{
    if(!Auth::check()) {
       Session::flash('message','You need to login');
       return Redirect::to("login");
    }
});

路线

Route::get('blogs/create',array('before' => 'auth','uses' => 'BlogsController@create'));

调节器

public function create() {
  return View::make('blogs.create');
 }

猜你在找的Laravel相关文章