Добавление тега span в Rails link_to - PullRequest
33 голосов
/ 27 сентября 2011

Я смотрел на SO о том, как добавить тег <span>, но я не видел пример, который поместил <span> туда, где я хочу, используя Rails 3 link_to:

<a href="#" class="button white"><span id="span">My span&nbsp;</span>My data</a>

Я попробовал что-то вроде:

<%= link_to(content_tag{:span => "My span&nbsp;", :id => "span"} @user.profile.my_data, "#", {:class => "button white"}) %>

Но это не сработало.

Ответы [ 4 ]

82 голосов
/ 27 сентября 2011

link_to может занять блок , поэтому я думаю, что вы ищете что-то вроде этого:

<%= link_to '#', :class => 'button white' do %>
    <span id="span">My span&nbsp;</span><%= @user.profile.my_data %>
<% end %>
9 голосов
/ 09 февраля 2014

Комбинация .html_safe с #{@user.profile.my_data} также должна работать.

<%= link_to "<span id='span'>My span&nbsp;</span>#{@user.profile.my_data}".html_safe, "#", class: 'button white' %>

Вы также можете использовать content_tag, чтобы он выглядел так:

<%= link_to(content_tag(:span, "My span&nbsp;", id:"span")+"#{@user.profile.my_data}", "#", class: 'button white' %> 

Они в основном идентичны, но вам может показаться проще. Кроме того, я довольно новичок в кодировании, так что, если по какой-то сумасшедшей причине это неправильно, пожалуйста, просто прокомментируйте, и я изменю это. Благодаря.

3 голосов
/ 27 сентября 2011
link_to '#', :class => 'button white' do
  <span id="span">My span&nbsp;</span>My data
end
0 голосов
/ 07 декабря 2015

В ХАМЛЕ:

= link_to  new_post_mobile_path(topic.slug), class: 'add-new-place-btn' do
  %span{:class => "glyphicon glyphicon-plus", :style => "margin-right: 4px;"}
  New Place
...