我正在使用Twitter的Bootstrap内容,并且具有以下HTML:
<a class="btn" href="<%= user_path(@user) %>"><i class="icon-ok icon-white"></i> Do it@</a>
在Rails中执行此操作的最佳方法是什么?我想用<%= link_to 'Do it', user_path(@user) %>
但是<i class="icon-ok icon-white"></i>
把我扔掉了?
我正在使用Twitter的Bootstrap内容,并且具有以下HTML:
<a class="btn" href="<%= user_path(@user) %>"><i class="icon-ok icon-white"></i> Do it@</a>
在Rails中执行此操作的最佳方法是什么?我想用<%= link_to 'Do it', user_path(@user) %>
但是<i class="icon-ok icon-white"></i>
把我扔掉了?
Answers:
两种方式。要么:
<%= link_to user_path(@user) do %>
<i class="icon-ok icon-white"></i> Do it@
<% end %>
要么:
<%= link_to '<i class="icon-ok icon-white"></i> Do it@'.html_safe, user_path(@user) %>
link_to
-感谢您教我!
最近我有同样的需求。试试这个:
<%= link_to '<i class="icon-ok icon-white"></i> Do it'.html_safe, user_path(@user) %>
如果您想在Rails中使用从Twitter Bootstrap中使用相同图标类的链接,您需要做的就是这样。
<%= link_to "Do it@", user_path(@user), :class => "btn icon-ok icon-white" %>
btn
课程,则只看到图标。按钮外观并不意味着它是一个按钮。
在gem twitter-bootstrap-rail中:它们创建一个辅助字形
def glyph(*names)
content_tag :i, nil, :class => names.map{|name| "icon-#{name.to_s.gsub('_','-')}" }
end
因此,您可以像这样使用它:glyph(:twitter)
链接帮助器看起来像:link_to glyph(:twitter), user_path(@user)
<%= link_to glyph(:comments), post_path(post), :class => "btn-small btn-warning" %>
。这comments
是Font Awesome字符的名称,post_path(post)
是目标URL,并class =>
显示该字形将使用的类。
我认为,如果您经常在应用程序中使用它,可以通过帮助程序方法简化它。
把它放在helper / application_helper.rb
def show_link(link_text, link_source)
link_to("#{content_tag :i, nil, class: 'icon-ok icon-white'} #{link_text}".html_safe,
link_source, class: "btn")
end
然后从您的视图文件中调用它,就像link_to
<%= show_link "Do it", user_path(@user) %>
如果您使用的是Bootstrap 3.2.0,则可以在您的 app/helpers/application_helper.rb
module ApplicationHelper
def glyph(*names)
content_tag :i, nil, :class => names.map{|name| "glyphicon glyphicon-#{name.to_s.gsub('_','-')}" }
end
end
然后,在您看来:
link_to glyph(:pencil) + ' Edit', edit_post_path(@post), class: 'btn btn-warning'
<%= link_to ...
在带有block的示例中?