Laravel 5从另一种方法重定向 [英] Laravel 5 Redirect from another method

查看:315
本文介绍了Laravel 5从另一种方法重定向的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想创建一个可以从其他方法调用的重定向方法。不幸的是,我不能做我想要的(见下面的源)。



我建议一个解决方案,但我想重定向只是调用该方法,不做更多的东西。



我的解决方案: 类FooController extends Controller
{

public function foo(Request $ request)
{
if($ result = $ this-> __ check($ request)){
return $ result;
}
return view('foo');
}

私人函数__ckeck(请求$请求)
{
if(doSomething){
return redirect('/');
}
return false;
}
}

我想要的:

  class FooController extends Controller 
{

public function foo(Request $ request)
{
$ this-> __ check($ request);

return view('foo');
}

私人函数__ckeck(请求$请求)
{
if(doSomething){
// redirect source< --- what I想要
}
return false;
}
}


解决方案

这是你正在搜索

  public function foo(Request $ request)
{
return $ this - > check($ request);
}

私人函数检查(请求$请求)
{
if(doSomething)
{
return Redirect :: to(' /短跑'); // redirect
}
return Redirect :: to('/');
}


I want to create a redirect method that could be called from other methods. Unfortunately, I can't do it as I want (see source below).

I propose a solution, but I want to redirect just calling the method, not doing more stuff.

My solution:

class FooController extends Controller
{

    public function foo(Request $request)
    {
        if ($result = $this->__check($request)) {
            return $result;
        }
        return view('foo');
    }

    private function __ckeck(Request $request)
    {
        if (doSomething) {
            return redirect('/');
        }
        return false;
    }
}

What I want:

class FooController extends Controller
{

    public function foo(Request $request)
    {
        $this->__check($request);

        return view('foo');
    }

    private function __ckeck(Request $request)
    {
        if (doSomething) {
            // redirect source <--- what I want
        }
        return false;
    }
}

解决方案

Maybe this is what you are searching

public function foo(Request $request)
{
    return $this->check($request);
}

private function check(Request $request)
{
    if (doSomething) 
    {
       return Redirect::to('/dash'); // redirect
    }
    return Redirect::to('/');   
}

这篇关于Laravel 5从另一种方法重定向的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆