2

我想(:i)在 Rails 代码中的标签中添加一个类:

<td><%= link_to content_tag(:i), item %></td>

我希望最终代码看起来像:

<td><a href="/items/2"><i class="#"></i></a></td>
4

2 回答 2

16

@Dogbert 是正确的,只是您需要nil作为第二个参数传递,因为content_tag定义为

def content_tag(tag, content_or_options_with_block=nil, options=nil, escape=true, &block)
  ...
end

如果您传递块,则第二个参数仅被视为内容。为了扩展它,此时传入的任何额外选项都将成为 HTML 属性,因此相同的形式适用于 ID、data-* 等内容。

content_tag(:i, nil, class: '#', id: 'foo', data: {foo: 'bar'})

会变成

<i class="#" id="foo" data-foo="bar"></i>
于 2013-01-21T06:08:12.047 回答
1

试试这个

<%= link_to content_tag(:i, :class => '#'), item %>

于 2013-01-21T06:05:21.190 回答