rails6 EXCELシートを指定して読み込む

rails6 EXCELシートを指定して読み込む

rails6でEXCELシートを指定して読み込むまでの手順を記述してます。Railsのバージョンは6.1.3を使用してます。

環境

  • OS CentOS Linux release 7.9.2009 (Core)
  • Ruby 3.0.0
  • Rails 6.1.3

環境

  • OS CentOS Linux release 7.9.2009 (Core)
  • Ruby 3.0.0
  • Rails 6.1.3

rooインストール

excelファイルを読み込むために、「roo」を使用してます。

Gemfileに以下を追加します。

インストールします。

シートを指定

ライブラリ「roo」を使用して、シートを指定して読み込む場合は「sheet」を使用して、読み込む「シート」を指定します。

これでシートを指定して、読み込むことが可能です。

サンプル

実際に、シートを指定してEXCELを読み込んでみます。
読み込むEXCELファイルは「Book1.xlsx」という名称で、「foo」シートのデータは下図となります。

「ExcelImportController」というController内でシートを指定します。

view側は「test.html.erb」という名前で作成してます。
以下のようにbootstrapを使用して、テーブルレイアウトにしてます。

「routes.rb」には、以下を追加してます。

「rails s」で起動して、ブラウザから http://プライベートIP or サーバーアドレス:3000/exceltest にアクセスすると
指定されたシートのデータが表示されていることが確認できます。