Задать вопрос
loogle18
@loogle18

Кто подскажет, как в руби вывести порядковый номер в элемента?

Доброго времени суток!

Есть небольшая проблемка (сам FE) с руби:

= link_to 'blah-blah-blah', '#', class: 'some_class' do
  %span.order_number='Нужно вывести порядковый номер данной ссылки'


Задача заключается в том, чтобы внутри ссылки вывести ее порядковый номер. Ссылка берется из массива, к которому я никак не могу достучаться в виду своих знаний руби языка((
Сам паршал шаблонный и в некоторый местах количество ссылок может быть разное.
На фронтэнде делать это не особо хочу, т.к. не трушное это дело и т.д.

Может кто из рубистов подсказать, как это правильно реализовать в руби?
Буду очень благодарен.
  • Вопрос задан
  • 940 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
Freika
@Freika
Senior Ruby on Rails developer
Чистый Ruby: apidock.com/ruby/Enumerable/each_with_index

- array.each_with_index do |element, index|
  = link_to 'blah-blah-blah', '#', class: 'some_class' do
    %span.order_number = index
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
MAXOPKA
@MAXOPKA
link_to - не Ruby, это хелпер из фреймворка Ruby on Rails.
Если массив перебирается с помощью метода each, то можно его заменить на .each_with_index, при этом, в блок будет передаваться 2-й параметр - число от 0 до кол-ва элементов в массиве минус один. Этот параметр может служить порядковым номером ссылки.
Ответ написан
2ord
@2ord
А не проще ли обернуть в тег li? Он сам сделает своё дело.
Что-то типа такого
%ol
  - for link in links do
    %li
      = link_to link.path, class: 'some_class' do
        = link.name
Ответ написан
@thepry
Ruby on rails, 1С разработчик
В некоторых случаях выгодно нумеровать с помощью CSS, например, если элементы можно менять местами, или отдельно получить конкретный partial с сервера и поменять на клиенте.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы