вставка кодов рубиновых разрывов HTML

0

У меня есть этот код с методом check который возвращает true или false

<%= link_to path, format: 'js' do %>
            <i class="<%= check ? "close\"></i>Unfollow member" : "open\"></i>Follow member></i>" %>
<% end %>
</div>
  <div class="list-group list-normal m-b-none">

но эти результаты

<i class="close&quot;&gt;&lt;/i&gt;Unfollow member
&lt;/a&gt;  &lt;/div&gt;
  &lt;div class=" list-group="" list-normal="" m-b-none"="">
</i>

Как это может быть? (Я не хочу повторять оператор check внутри и вне тега i)

Теги:

2 ответа

1
Лучший ответ

Я думаю, что следующее будет более читаемым:

<% if check %>
  <i class="close">Unfollow member</i>
<% else %>
  <i class="open">Follow member></i>
<% end %>

Обновить:

Чтобы сделать его одним лайнером:

<%= check ? "<i class='close'>Unfollow member</i>" : "<i class='open'>Follow member></i>" %>
  • 0
    Да, я знаю, но я хочу несколько однострочных операторов;) Возможно ли это?
  • 0
    @ user1611830, пожалуйста, смотрите мое обновление.
0
<%= link_to path, format: 'js' do %>
  <i class="<%= check ? "'close'></i>Unfollow member" : "'open'></i>Follow member>" %></i>
<% end %>

Я не пытался. Но если может работать.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню