Laravel 5 中的 Flash 数据

ci_*_*ver 2 flash-message laravel laravel-5

我正在尝试显示闪存数据,但显示不正确。它显示:

{{ Session::get('flash_message') }}
Run Code Online (Sandbox Code Playgroud)

但这应该是消息

"Your article has been created"
Run Code Online (Sandbox Code Playgroud)

我的代码有什么问题吗?谢谢!

在我的控制器中我有:

public function store(ArticleRequest $request) 
{ 
    Auth::user()->articles()->create($request->all());

    \Session::flash('flash_message', 'Your article has been created');

    return redirect('articles');            
}
Run Code Online (Sandbox Code Playgroud)

我的app.blade.php是:

<!DOCTYPE html>
    <head>
    <meta charset="UTF-8">
        <title>App Name - @yield('title')</title>
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
        <link rel="stylesheet" href="{{ elixir('css/all.css') }}">
        <script src= "http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
        <script src="js/app.js"></script>
    </head>
    <body>

        <div class="container">

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

            @yield('content')

        </div>

        @yield('footer')

    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

在我的route.php 中,我有以下内容:花括号将内容显示为字符串而不是变量。

{{ Session::get('flash_message') }}
Run Code Online (Sandbox Code Playgroud)

cir*_*van 5

如果您的route.php:

Blade::setContentTags('<%', '%>');
Run Code Online (Sandbox Code Playgroud)

那么这意味着您不能对刀片内容使用大括号。试试这个:

@if(Session::has('flash_message'))
    <div class="alert alert-success">
        <% Session::get('flash_message') %>
    </div>
@endif
Run Code Online (Sandbox Code Playgroud)

或者直接setContentTags()从您的route.php.