在RoR中,是否有一种简单的方法可以阻止视图输出<p>标签?</p>

时间:2010-04-27 05:47:25

标签: ruby-on-rails

我是Ruby和Rails的新手,我有一个简单的控制器,在默认视图中显示数据库中的项目。当它以HTML格式显示时,它会输出<p>个标签以及文本内容。有没有办法防止这种情况发生?我想如果没有,至少有一种方法可以在如下语句中为同一输出设置默认的css类:

<% @Items.each do |i| %>

    <%= i.itemname %>
    <div class="menu_body">
           <a href="#">Link-1</a>
           </div>
<% end %>

所以问题在于<%= i.itemname %>部分。有没有办法阻止它将其包装在自己的<p>标签中?或者为输出设置css类?

谢谢!

2 个答案:

答案 0 :(得分:2)

您需要将其与您选择的HTML标记括起来。如果需要,您还可以使用<%=h i.itemname %>示例:

来转义错误代码
<% @Items.each do |i| %>

    <div><%=h i.itemname %></div>
    <div class="menu_body">
           <a href="#">Link-1</a>
           </div>
<% end %>

编辑:Ryan Bigg是对的。 Rails不输出<p>标记。对不起,错误的信息。

答案 1 :(得分:-1)

如果需要,您可以更改public / stylesheets / scaffold.css。

或者,如果您想为单个页面更改项目/ index.html.erb

<style> 
p{
/* your style here *?

}

</style>