2014-09-29 135 views
2

我在Rails 4中遇到了Flash消息問題。 我正在做一個月的Rails,當我嘗試登錄頁面或嘗試註銷時,我沒有任何Flash消息?它可能是瀏覽器嗎?Rails 4中的Flash消息

這是在application.html.erb閃光燈消息

  <% flash.each do |name, msg| %> 
       <% content_tag(:div, msg, class: "alert alert-#{name}") %> 
      <% end %> 

我在Ubuntu 14的代碼,我使用的是Firefox/Chrome的

TNX, 湯姆

回答

1
<%= content_tag(:div, msg, class: "alert alert-#{name}") %> 

平等很重要。它告訴軌道顯示它。

1

您應該使用的<%=代替<%

第一個將通過Rails的模板引擎被視爲將被執行並送往輸出Ruby代碼,而第二個纔可以執行。

5

您使用的是錯誤的erb標籤,這就是爲什麼content_tag沒有顯示出來。它應該是:

<%= content_tag(:div, msg, class: "alert alert-#{name}") %>

這不是說你有<%和我上面包括<%=的差異。

0
Try this code in application layout... 

<div id="wrapper"> 
<div id="page-wrapper"> 
<div class="row"> 
<div class="col-lg-12"> 
<% flash.each do |name, msg| %> 
<%= content_tag(:div, msg, :id=>"#{name}", :class `enter code here`=> "alert alert- info") %> 
<%end%> 
</div> 
    </div> 
    </div> 
    </div> 

<script type="text/javascript"> 
window.setTimeout(function() 
{ 
$("#notice").fadeTo(500, 0).slideUp(500, function() 
{ 
$(this).remove(); 
}); 
}, 5000); 
</script> 
<%= yield%>