在页面 View 中,我可以这样做: 问-6ren">
gpt4 book ai didi

ruby-on-rails - content_for 值周围的额外空格

转载 作者:行者123 更新时间:2023-12-05 01:16:04 24 4
gpt4 key购买 nike

我需要给我的正文标签一个特定于页面的 id,以更好地定位 css 选择器。

为此,我在 application.erb 布局中设置了以下内容:

<body id="<%= content_for :page_id %>">

在页面 View 中,我可以这样做:
<% content_for :page_id do %>
<%='some-page-id'%>
<% end %>

问题是我在返回值周围返回了额外的空格,导致渲染的正文标记看起来像这样:
<body id="    some-page-id " >

这会阻止 id 工作。我有一个解决方法:
<% body_id = content_for :page_id %>
<body id="<%= body_id.strip %>">

但是有没有办法解决这个问题,以便 content_for 在没有额外空格的情况下返回它的值?是什么导致这个额外的空白被返回?

最佳答案

不要使用额外的 ERB 分隔符来设置内容

<% content_for(:page_id) { "thepageid" } %>

您可以更进一步并定义一个辅助方法
# in app/helpers/application_helper.rb
def page_id(page_id)
content_for(:page) { page_id }
end

# in your template
<% page_id("thepageid") %>

关于ruby-on-rails - content_for 值周围的额外空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10916817/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com