Flash通知消息未显示“ruby on rails”

时间:2016-06-12 02:02:45

标签: ruby-on-rails ruby-on-rails-4 flash-message

在我来到这里之前我找了一个答案,却一无所获。 我在我的控制器中有这个

def create
    @article = Article.new(article_params)
    if @article.save
        flash[:notice] = "Article was successfully created"
        redirect_to article_path(@article)
    else
        render 'new'
    end
end

我在application.html.erb中添加了这个:

<body>
  <% flash.each do |name, msg| %>
    <ul>
      <li><%= msg %></li>
    </ul>
  <% end %>
<%= yield %>

这是我的show.html.erb:

<h1>Showing selected article</h1>

<p>
  Title: <%= @article.title %>
</p>

<p>
  Description: <%= @article.description %>
</p>

提交表格后,我转到显示页面,不显示闪光灯通知。为什么呢?

1 个答案:

答案 0 :(得分:2)

我查看了你的github repo,似乎你没有使用application.html.erb作为你的布局,因为你的文章控制器继承自ActionController::Base

有两种方法可以做到这一点。

您可以将控制器文件更改为从ApplicationController继承:

class ArticlesController < ApplicationController

end

或者您可以将默认布局添加到控制器文件中:

class ArticlesController < ActionController::Base
layout 'application'

end

希望它能解决你的问题。