Я пишу модуль для добавления функциональности в гем FlagShihTzu.
В основном он проходит через флаги и выводит ключи для клавиш, назначенных объекту. Это работает, но я также хочу иметь возможность использовать блок в представлении для работы с выводом.
Проблема в том, что он выводит массив из модуля и вывод из блока в представлении.
module AwesomeFlags
def my_flags(column = nil)
a = self.flag_mapping
if column.nil?
c = a.values.map {|var| var.keys}.flatten
else
b = a[column]
c = Array.[](b.keys).flatten
end
c.map {|var| self.send(var) ? "#{var.to_s} " : nil}.compact!
end
end
По виду:
= book_offer.my_flags.each do |flag|
= flag.titleize
Что я получаю:
Regular Complimentary regular complimentary