如何在 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 中返回两次?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Laravel 4.2 在单个查询(不是 for 查询循环)中批量插入或更新
如何在 laravel 4.2 中使用带有自定义预过滤器的 AJAX 上传 CSV 文件