使用 toast 实现的 Flash 消息 Laravel 5.2

Flash Message Laravel 5.2 using toast materialize

你能帮我解决这个问题吗?所以在这种情况下,我想在按钮单击和操作(保存、更新、删除)成功执行后在下一页显示 flash 消息...

我读过这个https://www.tutorialspoint.com/materialize/materialize_dialogs.htm and also http://materializecss.com/dialogs.html但不知道如何在我的控制器中使用它

public function hapuskeluhan($id){

    $keluh = keluhan::findOrFail($id);
    $keluh->delete();                
    return redirect('lihatkeluhan');
}

例如删除函数,我的toast怎么会在重定向前出现?或者也许之后?请大哥帮帮我

我认为您需要将消息与重定向一起传递以显示在视图上。

public function hapuskeluhan($id)
{
    $keluh = keluhan::findOrFail($id);
    $keluh->delete();                
    return redirect('lihatkeluhan')->with(['message', 'Record Deleted!']);
}

并且在您看来,您可以访问会话变量消息作为

Materialize.toast({{ session('message') }}, duration, 'rounded');

并发起点击以显示吐司

$(document).ready(function () {

    $("your element containing materialize handle").click();

});

试试这个

@if(session('message'))
        <script>
          Materialize.toast("{{ @session('message') }}", 5000);  
        </script>

        @endif

@Mohammad Arshad 的回答是正确的。谢谢。

为了澄清事情,我把我的代码放在下面来传达系统登录。

如果您想使用颜色,例如,登录成功(绿色)或登录失败(红色)。只需分别用 'green' 或 'red' 填充 materialize toast 的第三个参数。

在 UserController.php 个文件上:

<?php

namespace App\Http\Controllers\Login;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Auth;
use Hash;
use App\User;

class UserController extends Controller
{

    public function login(Request $request)
    {

        $data = $request->all();

        if(Auth::attempt([ 'email'=>$data['email'], 'password'=>$data['password'] ]))
        {

            \Session::flash('message', ['msg'=>'Login done successfully!', 'class'=>'green']);

            return redirect()->route('user.index');

        }

        \Session::flash('message', ['msg'=>'Login failed. Check your data.', 'class'=>'red']);

        return redirect()->route('user.index');

    }

}

在 site.blade.php 文件上:

<!DOCTYPE html>
<html lang="{{ app()->getLocale() }}">
    <head>
        <meta charset="iso-8859-1">
        <meta name="viewport" content="width=device-width, initial-scale=1">

        <title>{{ config('site.name', 'YourSite') }}</title>

        <link rel="stylesheet" type="text/css" href="{{ asset('lib/materialize/dist/css/materialize.css') }}">
        <link rel="stylesheet" type="text/css" href="{{ asset('css/style.css') }}">

        <!-- Styles -->
        <link href="{{ asset('css/app.css') }}" rel="stylesheet">

    </head>
    <body>

        <header>
            @include('yourHeaderCode._site._nav')
        </header>

        <main>

            <!-- Your main code -->
            @yield('content')

        </main>

        @include('yourFooterCode._site._footer')

        <!-- Scripts -->
        <script src="{{ asset('lib/jquery/dist/jquery.js') }}"></script>
        <script src="{{ asset('lib/materialize/dist/js/materialize.js') }}"></script>

        @if(Session::has('message'))
            <script type="text/javascript">
                Materialize.toast("{{ Session::get('message')['msg'] }}", 4000, "{{ Session::get('mensagem')['class'] }}");
            </script>
        @endif()

    </body>
</html>