我需要一些帮助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);
}
});
例如,此消息“您必须登录到您的帐户才能注册该活动。”在用户重定向后,视图上显示为:“您必须登录到您的帐户才能注册该活动。”是否可以保留字符大小写?
答案 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."
});