Вы могли бы использовать некоторый код из этого (я действительно не знаю, что вы пытаетесь сделать здесь)
У надежды был бы ul и каждый изэлементы в массиве из фруктов будут отображаться как элемент списка. Это, однако, приводит к неопределенному методу `content_tag 'Вы имели в виду content_type?
Если вы хотите использовать content_tag
от контроллера, вам нужно добавить это:
include ActionView::Helpers::TagHelper
или в Rails 5 просто используйте helpers.content_tag
helpers.content_tag(:ul, class: 'alert alert-error') do ...
Есть ли хороший способ итерировать флэш-уведомление с помощью content_tag?
Нет такой вещи, как 'Повторите флэш-память [: note] с помощью content_tag '
Может быть, вы хотите сделать это:
Контроллер:
def import
@fruit = Fruit::Import.run(params[:food_id], params[:file]).result
if @fruit.empty?
flash[:notice] = 'Success'
else
flash[:notice] = @fruit
end
end
Помощник:
def flash_message
content_tag(:ul, class: 'alert alert-error') do
flash.each do |type, msg|
if msg.is_a? Array
msg.each do |item|
content_tag(:li, item, class: "flash_#{type}")
end
else
content_tag(:li, msg, class: "flash_#{type}")
end
end
end
end
Вид:
<%= flash_message %>