Step by Step Ruby on Rails

Ruby on Railsで実際にWebサイトを構築する手順をまとめています。

Active Adminでスプレッドシートをダウンロード

Active Adminでスプレッドシートでダウンロードする方法、ダウンロードするカラム、表示設定をカスタマイズする方法をまとめました。
 
下記記事の方法でインストール、初期設定をしている事を前提としています。
Active Adminのインストール方法
 
1)activeadmin-axlsxをインストール
 
$ vi Gemfile

gem 'activeadmin-axlsx'

$ bundle install

Installing htmlentities (4.3.1)
Installing mini_portile (0.5.3)
Installing nokogiri (1.6.1)
Installing rubyzip (1.0.0)
Installing axlsx (2.0.1)
Installing activeadmin-axlsx (2.0.1)

 
2)インストール確認
 
Active Adminの各モデルを表示するページの左下のダウンロードリンクに"XLSX"リンクが追加されている事を確認。
 
3)ダウンロード項目、表示設定をカスタマイズ
 
ここでは、下記のように変更してみます
 
・スプレッドシートのヘッダー行のスタイルを変更します。
・:created_at, :updated_atのカラムは表示しないようにします。
・著者ID、ジャンルIDを名前に変換します。
 
$ vi app/admin/book.rb

xlsx(:header_style => {:bg_color => 'C0BFBF', :fg_color => '000000' }) do
  delete_columns :created_at, :updated_at
  column(:author_id) {|resource| "#{resource.author.to_s}" }
  column(:genre_id) {|resource| "#{resource.genre.name}" }
end