Laravel向视图添加警报

问题描述 投票:0回答:3

我正在尝试向视图添加警报/警告,但什么也不显示。我可以使我的警报与重定向一起工作,但想知道如何通过传递数据的视图来实现。是否可以将警报传递给视图,还是可以通过“正确”的方式进行?

$form = new Form();
$form->storeRequest($request);
$form->saveJson();
$form->loadForm($request->cuid, $request->cubaseName);
return view('layouts.pages.form', ['form'=>$form])->with('success', 'Form has been saved.');
//return redirect()->back()->with('success', 'Saved!'); <--this would work if i wasn't passing data
php laravel redirect view alert
3个回答
1
投票

[所有框架都使用一种特殊的方法从称为Flash message的控制器发送消息

在您的控制器中

$request->session()->flash('status', 'Task was successful!');

并在视图中访问它

 @if($message = Session::get("status"))
      <h3 class="text-center text-success">{{$message}}</h3>
      {{Session::forget("status")}}
 @endif

Laravel -> Http Session -> Flash Data


0
投票

一种解决方法是使用Session::flash

在控制器中设置Session::flash

$form = new Form();
$form->storeRequest($request);
$form->saveJson();
$form->loadForm($request->cuid, $request->cubaseName);
Session::flash('message', 'This is a message!'); 
return view('layouts.pages.form', ['form'=>$form]);

然后您认为:

@if(Session::has('message'))
<p class="alert {{ Session::get('alert-class', 'alert-info') }}">{{ Session::get('message') }}</p>
@endif

0
投票

[如果您正在寻找执行引导警报之类的整洁方法,则应考虑Jeffrey Way的laracasts/flash软件包。

可以找到文档here

© www.soinside.com 2019 - 2024. All rights reserved.