如何将 class 添加到基本 ERB

How do I add a class to basic ERB

我想在控制器的显示操作中显示页面标题,这与我在索引控制器上的操作类似,但页面没有 link。以下代码是我在索引页面上的工作代码:

<%= link_to @page.title, page_path(@page), class: "h1" %>

我希望它显示 page.title 并具有 h1 的 class,但以下代码似乎不起作用:

<%= @page.title, class: "h1" %>

有人有什么想法吗? :)

您仍然需要将它放在 div 中才能应用 class。值得庆幸的是 Rails 有一个 content_tag 方法可以为您完成这项工作:

<%= content_tag(:div, @page.title, class: "h1") %>

那将输出:

<div class="h1">Your title</div>

有关该方法的更多信息,请参阅文档。

http://apidock.com/rails/ActionView/Helpers/TagHelper/content_tag

更新:

您可以像这样在 content_tag 中嵌套内容:

<%= content_tag(:div, class: "h1") do %>
  <%= @page.title %> 
  <div>More stuff</div>
<% end %>

为简单起见,您可以使用:

<div class="h1">
  <%= @page.title %>
</div>