我试图重定向到上一页的消息时,有一个致命的错误。

App::fatal(function($exception)
{
    return Redirect::back()->with('msg', 'The Message');
}

在视图中尝试访问msg

Sessions::get('msg')

但是什么都没有渲染,是我做错了吗?


当前回答

拉拉维尔 8

Route::post('/user/profile', function () {
// Update the user's profile...

return redirect('/dashboard')->with('status', 'Profile updated!');
});

叶片的语法

@if (session('status'))
<div class="alert alert-success">
    {{ session('status') }}
</div>
@endif

在这里输入链接描述

其他回答

对于拉拉维尔3

只是提醒一下@giannis christofakis的回答;对于任何使用Laravel 3替代

return Redirect::back()->withErrors(['msg', 'The Message']);

:

return Redirect::back()->with_errors(['msg', 'The Message']);

我也遇到过同样的问题,这个方法奏效了。

控制器

return Redirect::back()->withInput()->withErrors(array('user_name' => $message));

View

<div>{{{ $errors->first('user_name') }}}</div>

对于拉拉维尔 5.5+

控制器:

return redirect()->back()->with('success', 'your message here');

叶:

@if (Session::has('success'))
    <div class="alert alert-success">
        <ul>
            <li>{{ Session::get('success') }}</li>
        </ul>
    </div>
@endif

在laravel 5.8中,你可以做以下事情:

return redirect()->back()->withErrors(['name' => 'The name is required']);

在刀刃上:

@error('name')
<p>{{ $message }}</p>
@enderror

当我试图重定向时,我收到了这条消息:

public function validateLogin(LoginRequest $request){
    //

    return redirect()->route('sesion.iniciar')
            ->withErrors($request)
            ->withInput();

当正确的方式是:

public function validateLogin(LoginRequest $request){
    //

    return redirect()->route('sesion.iniciar')
            ->withErrors($request->messages())
            ->withInput();