1

我需要一些关于 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);
    }
});

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

4

1 回答 1

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."
});
于 2013-04-07T15:11:47.367 回答