我试图重定向到上一页的消息时,有一个致命的错误。
App::fatal(function($exception)
{
return Redirect::back()->with('msg', 'The Message');
}
在视图中尝试访问msg
Sessions::get('msg')
但是什么都没有渲染,是我做错了吗?
我试图重定向到上一页的消息时,有一个致命的错误。
App::fatal(function($exception)
{
return Redirect::back()->with('msg', 'The Message');
}
在视图中尝试访问msg
Sessions::get('msg')
但是什么都没有渲染,是我做错了吗?
当前回答
我知道这是一个老帖子,但这个答案可能会帮助到一些人。
在Laravel 8。这对我来说是有效的:你可以将错误返回到上一页或另一页。
return Redirect::back()->withErrors(['password' => ['Invalid Username or Password']]);
这也可以:
return view('auth.login')->withErrors(['username' => ['Invalid Username or Password']]);
但是,请确保您返回的页面/视图具有与withErrors方法中传递的第一个参数(在本例中是用户名或密码)对应的字段名,并且视图中的@error指令像这样引用相同的字段
@error('password') //or @error('username')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
例如
希望这能帮助到一些人。欢呼。
其他回答
与 Laravel 5.8 相关:
控制器
return back()->with('error', 'Incorrect username or password.');
叶片
@if (Session::has('error'))
<div class="alert alert-warning" role="alert">
{{Session::get('error')}}
</div>
@endif
这是100%的解决方案
*上面提到的解决方案不适合我,但这一个适用于我在laravel 5.8:
$status = 'Successfully Done';
return back()->with(['status' => $status]);
并接受它为:
@if(session()->has('status'))
<p class="alert alert-success">{{session('status')}}</p>
@endif
Laravel 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版本是^7.0
在控制器
return back()->with('success', 'Succesfully Added');
关于Blade文件
@if (session('success'))
<div class="alert alert-success">
{!! session('success') !!}
</div>
@endif
有关文档,请参阅Laravel文档
在Laravel 5.4中,以下内容对我有用:
return back()->withErrors(['field_name' => ['Your custom message here.']]);