Могу ли я использовать link_to для генерации ссылки с пролетом внутри? - PullRequest
19 голосов
/ 29 января 2011

Я в основном пытаюсь получить такой результат:

        <a href="#" class="button small-button green-button">
            Log in
            <span class="button-right"></span>
        </a>

Но я не знаю, как это сделать с помощью link_to в рельсах 3?

Ответы [ 5 ]

45 голосов
/ 29 января 2011

Вы можете использовать блочную форму link_to для этого:

<%= link_to "#", :class => "button small-button green-button" do %>
  Log in
  <span class="button-right"></span>
<% end %>
4 голосов
/ 11 февраля 2014

Самый простой способ сделать это - использовать html_safe или raw functions

<%= link_to 'Log In<span class="button-right"></span>'.html_safe %>

или с использованием необработанной функции (рекомендуется)

<%= link_to raw('Log In<span class="button-right"></span>') %>

Просто, как может! !!

Не используйте html_safe метод, если вы не уверены, что ваша строка не равна нулю. Вместо этого используйте метод raw (), который не вызовет исключение для nil.

3 голосов
/ 30 января 2011

Следующее сработало для меня.Я не знаю, почему другие части кода не (другая версия ruby?).

<%= link_to content_tag(:span, 'Register'), {:action => "register"}, :class=>"button" %>
3 голосов
/ 29 января 2011

Ваш фрагмент выглядит как статическая ссылка, которая никогда не изменится при интерпретации Rails; Я полагаю, его сохранить, чтобы вставить необработанный HTML в вашем представлении.

Тем не менее:

<%= link_to("#", :class=>"button small-button green-button") do %>
  Log in
  <span class="button-right"></span>
<% end %>

Ссылка .

1 голос
/ 01 июня 2014

Добавить к ответу Джереми - для пути, например:

          <%= link_to edit_section_path(@section) do %>
              Edit
              <span class="fa fa-list pull-right"></span>
          <% end %>
...