【问题标题】:Redirect after data insertion in laravel with success message在 laravel 中插入数据后重定向并显示成功消息
【发布时间】:2018-09-23 17:28:29
【问题描述】:

你好 guyzz 我想重定向回表单以获取新的数据输入,这实际上是 form.blade.php 视图。我可以看到成功插入的数据,但是如何使用成功消息进行重定向。我的代码已给出。

public function store(Request $request)
{
   $sname = $request->input('sname');
   $fname = $request->input('fname');
   $gradyear = $request->input('gradyear');
   $phone = $request->input('phone');
   $email = $request->input('email');
   $paddress = $request->input('paddress');
   $prog = $request->input('prog');
   $job = $request->input('job');
   $org = $request->input('org');
   $position = $request->input('position');

   $data = array(
       'sname' => $sname,
       "fname" => $fname,
       "gradyear" => $gradyear,
       "phone" => $phone,
       "email" => $email,
       "paddress" => $paddress,
       "prog" => $prog,
       "job" => $job,          
       "org" => $org,
       "position" => $position
   );

   DB::table('tests')->insert($data);
   echo "Data inserted Successfully";
}

【问题讨论】:

  • 检查我的答案,这应该在你点击 store 方法后重定向

标签: laravel


【解决方案1】:

在代码之后的控制器上

return back()->with('status', 'successfully inserted');

在表单视图上

 @if(session('status')
    {{ session('status') }}
    @endif

你可以用你选择的 CSS 来格式化你的消息

【讨论】:

    【解决方案2】:

    在控制器中:

    public function store(Request $request)
    {
        //
        return back()->with('success', 'Data inserted Successfully');
    }
    

    在刀片中:

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

    【讨论】:

    • 点击我如何重定向?它没有显示任何数据插入成功的消息
    【解决方案3】:

    假设上面的代码按照你想要的方式工作,你可以使用闪现的会话数据重定向:

    public function store(Request $request)
    {
       $sname = $request->input('sname');
       $fname = $request->input('fname');
       $gradyear = $request->input('gradyear');
       $phone = $request->input('phone');
       $email = $request->input('email');
       $paddress = $request->input('paddress');
       $prog = $request->input('prog');
       $job = $request->input('job');
       $org = $request->input('org');
       $position = $request->input('position');
    
       $data = array(
           'sname' => $sname,
           "fname" => $fname,
           "gradyear" => $gradyear,
           "phone" => $phone,
           "email" => $email,
           "paddress" => $paddress,
           "prog" => $prog,
           "job" => $job,          
           "org" => $org,
           "position" => $position);
    
       DB::table('tests')->insert($data);
    
       return back()->with('status', 'Data inserted Successfully!');
    
    }
    

    在您的刀片文件中,您可以使用以下内容进行渲染:

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

    https://laravel.com/docs/5.7/redirects#redirecting-with-flashed-session-data

    【讨论】:

      猜你喜欢
      • 2016-10-09
      • 2015-01-01
      • 1970-01-01
      • 2020-08-10
      • 1970-01-01
      • 1970-01-01
      • 2016-11-03
      • 1970-01-01
      相关资源
      最近更新 更多