suchen

Heim  >  Fragen und Antworten  >  Hauptteil

laravel5 springt zur angegebenen Methode


Hier gibt es einen Hintergrund-Basisklassencontroller, der bestimmt, ob der Benutzer angemeldet ist, und dann zur angegebenen Methode springt, wenn er nicht angemeldet ist, aber der Satz darin „return Redirect::to('adminlogin@login ')" funktioniert nicht. Die Seite springt nach der Anmeldung immer zur Startseite. Anstatt zur Anmeldeseite zu gehen.
Wer kann es mir erklären und auf den Fehler hinweisen?

某草草某草草2755 Tage vor757

Antworte allen(6)Ich werde antworten

  • 巴扎黑

    巴扎黑2017-05-16 16:56:26

    使用:

    redirect()->action('YourController@method');

    Antwort
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-16 16:56:26

    确实不管用。当时也和楼主遇到的是同一个问题,由于当时比较紧急,就没深究。个人感觉由于是父类,貌似Redirect无法跳转。

    关注。


    16年5月30日修改,看了看当时我的处理办法是使用了Laravel内置的auth中间件来搞定的

        public function __construct(){
            $this->checkLogin();
        }
    
        /**
         * check login
         */
        protected function checkLogin(){
            //子类需要判断登录,则使用auth中间件
            if($this->boolNeedLogin){
                $this->middleware('auth');
            }
        }

    Antwort
    0
  • 世界只因有你

    世界只因有你2017-05-16 16:56:26

    你可以直接用redirect跳转

    return redirect('/home');//跳转到domain/home
    
    return redirect('/articles/1');//跳转到domain/articles/1

    Antwort
    0
  • PHPz

    PHPz2017-05-16 16:56:26

    route("admin\loginController@index")

    Antwort
    0
  • 巴扎黑

    巴扎黑2017-05-16 16:56:26

    建议LZ尝试将return改为echo,对于构造函数来说,return没有接收对象,一般是不起效果的。

    Antwort
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-16 16:56:26

    Redirect::to('login')->send();
    

    这样子就可以了.
    这里有详细解释.
    http://stackoverflow.com/questions/27568147/laravel-constructor-redirect-is-not-working

    Antwort
    0
  • StornierenAntwort