activeadmin-axlsx
activeadmin-axlsx copied to clipboard
Ability to execute controller's view_context methods in column builder block
Currently Axml::Builder
behaviour is not exactly the same as CSVBuilder
logic.
Axml::Builder
does not have access to controller's view_context
in column proc, but CSVBuilder
does.
Let's fix it.
Code example:
xlsx do
clear_columns
column :date do |v|
# HERE! format_date (helper method defined in controller) is not accessible
format_date v.date
end
end
csv do
column :date do |v|
format_date v.date # but it is accessible here
end
end
index do
column :date do |v|
format_date v.date # and of course here
end
end
controller do
helper_method :format_date
def format_date date
# some helper method in controller
case params[:grouping]
when 'by_day' then date.strftime '%d.%m.%Y'
when 'by_month' then date.strftime '%B %Y'
end
end
end