0
0

【Rails】rubyXLで作成したエクセル出力機能を呼び出すとActionController::UnknownFormatが発生した時の対処法

Last updated at Posted at 2024-01-17

エクセルファイル(.xlsx)を出力する機能をrubyXLを利用して作成したが、実行するとActionController::UnknownFormatが発生が発生する。

環境

rubyのバージョン
ruby 2.7.2p137
railsのバージョン
Rails 6.0.3.4
rubyXLのバージョン
rubyXL (3.4.25)

原因

原因はroutes.rbの設定でformatを指定していないことになる。

routes.rb
get 'excel/generate', to: 'excel#generate', as: 'generate_excel'

xlsxのエクセルファイルを出力する場合は、

get 'excel/generate', to: 'excel#generate', as: 'generate_excel', defaults: { format: :xlsx }

のように、
defaults: { format: :xlsx }
の箇所を追記するとエラーが解消される。
拡張子は出力したいファイル毎に変更してください。

初歩的なことかもしれませんが、自分の備忘録用と初学者の方々の参考になればと思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0