在视图中使用ERB将类添加到正文 - Rails

use*_*937 10 ruby ruby-on-rails erb

我看过这个截屏视频,在视图中添加页面标题,有没有办法可以做同样的但是添加一个类的body标签?

Jiř*_*šil 39

不确定你的意思,你可以这样做:

在一个视图中:

<% content_for :body_class, "my_class" %>
Run Code Online (Sandbox Code Playgroud)

在布局文件中:

<body class="<%= yield (:body_class) %>">
Run Code Online (Sandbox Code Playgroud)


Kyl*_*cey 5

我通常为这样的东西做一个帮助方法,所以你可以干净地设置默认值

application_helper.rb
  def body_class(class_name="default_class")
    content_for :body_class, class_name
  end


view:
  <% body_class "foo" %>

application.html.erb
  <body class="<%= yield (:body_class) %>">
Run Code Online (Sandbox Code Playgroud)


joh*_*bnz 5

有时,我们会使用当前控制器名称作为类名称:

<body class="<%= controller.controller_name %>">
Run Code Online (Sandbox Code Playgroud)

我发现这更简单,更优雅,但当然,因此您将无法分配单独的类名称。

s。在视图中使用 ERB 将类添加到主体 - Rails