如何在 Laravel 4.2 中返回两次?

Posted

技术标签:

【中文标题】如何在 Laravel 4.2 中返回两次?【英文标题】:How can I return two times back in Laravel 4.2? 【发布时间】:2016-12-29 06:55:27 【问题描述】:

哪些类用于缓存某些令牌或 url?登录后,我希望用户在 Laravel 4.2 中重定向两个 url?我已经尝试在我的用户身份验证函数中使用 URlGenerator 和 Request 类,所以我可以捕获我以前的 url,即 GET 登录请求,而所需的 url 在此请求之前。

我的登录功能:

namespace \Users\Repositories;

use View , Input , Redirect , Config;
use Illuminate\Routing\UrlGenerator;
use Users\Repositories\Contracts\AuthRepositoryInterface;
use Illuminate\Support\MessageBag;
use Illuminate\Http\Request;




class AuthRepository implements AuthRepositoryInterface 

    private $messageBag;
    private $errors;
    private $urlGenerator;
    private $request;


    public function __construct(MessageBag $messageBag, UrlGenerator $urlGenerator, Request $request) 
        $this->messageBag    = $messageBag;
        $this->urlGenerator  = $urlGenerator;
        $this->request       = $request;
    

 public function postLogin() 

        $remember_me = (Input::get('remember_me') == 1 ? true : false);


        try
        
            // Login credentials
            $credentials = array(
                'email'    => Input::get('email'),
                'password' => Input::get('password'),
            );


            // Authenticate the user
            $user = \Sentry::authenticate($credentials, $remember_me);

            // giving example
            //if(token or url)
            //redirect to 'frontend.fee.registration'
            //else

            return Redirect::route('profile')->with('success' , trans('users::success.login_success'));


        

我的路线:

 Route::get( '/login' ,                              array( 'as' => 'login' , 'uses' => 'HomeController@userLogin' ) );
Route::post('/login' ,                              array( 'as' => 'postLogin' , 'uses' => '\Users\Controllers\AuthController@postLogin' ) );

重定向目的地:

Route::get('/fee/id/register/'  ,                 array( 'as' => 'frontend.fee.registration' ,    'uses' => 'FeeController@feeRegistration' ) );

【问题讨论】:

【参考方案1】:

没有内置解决方案,但您可以使用 session 保存当前 URL,然后使用它们返回 2-3-4 等页面。

在这里查看答案和代码:How to return back twice in Laravel?

【讨论】:

以上是关于如何在 Laravel 4.2 中返回两次?的主要内容,如果未能解决你的问题,请参考以下文章