Mud*_*uli 129 laravel laravel-4 laravel-5
当发生致命错误时,我正尝试使用消息重定向到上一页.
App::fatal(function($exception)
{
return Redirect::back()->with('msg', 'The Message');
}
Run Code Online (Sandbox Code Playgroud)
在视图中尝试访问msg
Sessions::get('msg')
Run Code Online (Sandbox Code Playgroud)
但没有任何东西被渲染,我在这里做错了吗?
gia*_*kis 204
尝试
return Redirect::back()->withErrors(['msg', 'The Message']);
Run Code Online (Sandbox Code Playgroud)
在你的视图中调用它
@if($errors->any())
<h4>{{$errors->first()}}</h4>
@endif
Run Code Online (Sandbox Code Playgroud)
Ket*_*ari 113
Laravel 5
调节器
return redirect()->back()->with('success', ['your message,here']);
Run Code Online (Sandbox Code Playgroud)
刀:
@if (\Session::has('success'))
<div class="alert alert-success">
<ul>
<li>{!! \Session::get('success') !!}</li>
</ul>
</div>
@endif
Run Code Online (Sandbox Code Playgroud)
如果它给出错误:数组到字符串转换,那么只需在控制器中进行小修复
return redirect()->back()->with('success', ['your message,here']);
Run Code Online (Sandbox Code Playgroud)
Ric*_*ick 59
替代方法是
调节器
Session::flash('message', "Special message goes here");
return Redirect::back();
Run Code Online (Sandbox Code Playgroud)
视图
@if (Session::has('message'))
<div class="alert alert-info">{{ Session::get('message') }}</div>
@endif
Run Code Online (Sandbox Code Playgroud)
haa*_*kym 18
在Laravel 5.4中,以下内容对我有用:
return back()->withErrors(['field_name' => ['Your custom message here.']]);
Run Code Online (Sandbox Code Playgroud)
bum*_*ang 13
您有错误(拼写错误):
Sessions::get('msg')// an extra 's' on end
Run Code Online (Sandbox Code Playgroud)
应该:
Session::get('msg')
Run Code Online (Sandbox Code Playgroud)
我想,现在它应该工作,它对我有用.
小智 8
在 Laravel 5.8 中,您可以执行以下操作:
return redirect()->back()->withErrors(['name' => 'The name is required']);
Run Code Online (Sandbox Code Playgroud)
并在刀片中:
@error('name')
<p>{{ $message }}</p>
@enderror
Run Code Online (Sandbox Code Playgroud)
只需设置flash消息并从控制器功能重定向到后退.
session()->flash('msg', 'Successfully done the operation.');
return redirect()->back();
Run Code Online (Sandbox Code Playgroud)
然后,您可以在视图刀片文件中获取消息.
{!! Session::has('msg') ? Session::get("msg") : '' !!}
Run Code Online (Sandbox Code Playgroud)
在Laravel 5.5中:
return back()->withErrors($arrayWithErrors);
Run Code Online (Sandbox Code Playgroud)
在使用Blade的视图中:
@if($errors->has())
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
@endif
Run Code Online (Sandbox Code Playgroud)
#Laravel-9 在刀片内部,此重定向返回操作启动
return redirect()->back()->with('message', "The Message");
Run Code Online (Sandbox Code Playgroud)
刀片里面这个形状的地方,经过上面的动作就会返回
@if(session()->has('message'))
<p class="alert alert-success"> {{ session()->get('message') }}</p>
@endif
Run Code Online (Sandbox Code Playgroud)
对于 Laravel 5.5+
控制器:
return redirect()->back()->with('success', 'your message here');
Run Code Online (Sandbox Code Playgroud)
刀刃:
@if (Session::has('success'))
<div class="alert alert-success">
<ul>
<li>{{ Session::get('success') }}</li>
</ul>
</div>
@endif
Run Code Online (Sandbox Code Playgroud)
小智 5
在控制器中
例如
return redirect('login')->with('message',$message);
Run Code Online (Sandbox Code Playgroud)
在刀片文件中 消息将存储在会话中而不是变量中。
例如
@if(session('message'))
{{ session('message') }}
@endif
Run Code Online (Sandbox Code Playgroud)
小智 5
我知道这是一篇旧帖子,但这个答案可能会对那里的人有所帮助。
在 Laravel 8.x 中,这对我有用:您可以将错误返回到上一页或另一个页面。
return Redirect::back()->withErrors(['password' => ['Invalid Username or Password']]);
Run Code Online (Sandbox Code Playgroud)
这也将起作用:
return view('auth.login')->withErrors(['username' => ['Invalid Username or Password']]);
Run Code Online (Sandbox Code Playgroud)
但是,请确保您返回的页面/视图具有与 withErrors 方法中传递的第一个参数(在本例中为用户名或密码)相对应的字段名称,并且视图中的 @error 指令引用相同的字段像这样
@error('password') //or @error('username')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
Run Code Online (Sandbox Code Playgroud)
例如
希望这对某人有帮助。干杯。
| 归档时间: |
|
| 查看次数: |
339645 次 |
| 最近记录: |