Ruby Rails - 我可以选择特定通知的显示位置吗

Ruby on Rails - Can I choose where a specific notice will be shown

在我的应用程序中,我在 header 中使用 Bootstrap flash 来显示所有 notices/alerts.

这是我的代码:

.col-md-8.col-md-offset-2
  = bootstrap_flash
.clearfix
.row
  = yield

我有一个投票控制器,我想在投票按钮旁边的完全不同的地方显示它的警报。

我如何"choose"显示来自特定控制器的特定通知?

(我不知道这个花哨的 HAML 东西;))

如果您将布局更改为:

<div class="col-md-8 col-md-offset-2">
  <% unless content_for?(:custom_flash) do %>
    <%= bootstrap_flash %>
  <% end %>
</div>

并在表单的视图中输入:

<% content_for(:custom_flash) do %>
  <%= bootstrap_flash %>
<% end %>

然后按一下按钮:

<%= yield(:custom_flash) %>

除非您定义 content_for(:custom_flash).

,否则将显示您的正常闪烁

我希望你能解决 .erb,或者有人可以帮我用 HAML 解决 ;)

这是一种 HAML 方式。只需用 haml 复制@David 的答案即可。

如果您将布局更改为:

.col-md-8.col-md-offset-2
  = bootstrap_flash unless content_for?(:custom_flash)

并在您的表单视图中输入:

- content_for(:custom_flash) do
  = bootstrap_flash

然后按一下按钮:

= yield(:custom_flash)

除非您定义 content_for(:custom_flash)

,否则将显示您的正常闪烁