使用消息变量路由重定向

时间:2013-04-07 14:30:55

标签: php laravel

我需要一些帮助Laravel。我想要做的是创建一个路由过滤器,它将使用从变量传递的指定消息重定向用户。我目前有半工作的代码,但我唯一不喜欢的是,当在视图上显示时,消息会转换为小写字符。

Route::get('event/signup', array('before' => 'auth_message:You must be logged into your account to signup for the event.', 'uses' => 'event@signup'));

Route::filter('auth_message', function($message)
{
    if (!Auth::user())
    {
        return Redirect::to('/')->with('errorAlert', $message);
    }
});

例如,此消息“您必须登录到您的帐户才能注册该活动。”在用户重定向后,视图上显示为:“您必须登录到您的帐户才能注册该活动。”是否可以保留字符大小写?

1 个答案:

答案 0 :(得分:1)

您从过滤器中获取了错误的参数。以下工作与您期望的一样:

Route::filter('auth_message', function($route, $request, $value)
{
    if (!Auth::user())
    {
        return Redirect::to('/')->with('errorAlert', $value);
    }
});

Route::get('/', function(){
    exit(Session::get('errorAlert')); // Returns "You must be logged into your account to signup for the event."
});