Я использую драгоценный камень родословной и хотел бы распечатать целые деревья в таблице. Объект, с которым я работаю, это группы, поэтому он будет выглядеть примерно так.Как вы просматриваете и печатаете многомерный массив в представлении Rails?
Group A
|__ Group A 1
|__ Group A 1 A
|__ Group A 2
|__ Group A 2 A
|__ Group A 2 B
Group B
Group C
|__ Group C 1
Как правило, я бы создать метод и называть себя внутри цикла, но это, казалось бы нарушить MVC соглашение. Как я могу отобразить объект/хэш в представлении?
Примечание. У предков есть способ преобразования группы ActiveModel в хэш, поэтому это опция, а не итерация через объект ActiveModel.
Проблема в том, что объекты имеют неизвестную глубину. Если я использую этот метод, я получаю только два уровня вывода. Это не тот цикл, который я пытаюсь избежать, это метод саморегуляции, который, как я думаю, нарушит соглашение MVC. – etc
Если все они должны быть визуализированы одинаково, вы можете использовать одинаковые частичные рекурсивно, и в этом случае нужно обрабатывать любую глубину. Обновит мой ответ, чтобы проиллюстрировать. –
Мне нравится это решение. Это дает мне больше свободы над html. Получаю ли я что-либо, используя content_tag вместо более прямого '
Создать прок. Это проблема рекурсии.
источник
2013-08-21 23:33:06
который, действительно, я не очень хорошо решил. Мне придется вернуться позже и отредактировать это. надеюсь, что это помогает в то же время –
Я просто написать помощник, чтобы сделать это.
Затем на ваш взгляд:
Стиль, как хотелось бы.
источник
2013-08-21 23:57:05
Я пытаюсь решить это решение. Существует ли синтаксическая проблема в предоставленном коде? Отсутствует} или слишком много концов? Прошу прощения за рудиментарный запрос - я новичок в рубине. – etc
Возможно, я не испытал это. Я не соответствовал {с концом; Я исправлю это. –
Я получаю следующее сообщение об ошибке: undefined method 'join 'for"
": ActiveSupport :: SafeBuffer Любые предложения? (Еще раз спасибо, btw) – etc
Смежные вопросы