IT技術にまつわる実験ノート

「長編を書くより、短編を数多く完成させてください。それが上達への近道です」 by 手塚治虫

自作Webアプリ「IT勉強会用 名刺ジェネレーター」を公開しました!ぜひご活用ください😀

https://it-benkyoukai-meishi.herokuapp.com/

Rails で Thinreports を使ってみる

はじめに

前回の「Thinreports を使ってみる」に続いて、Rails で Thinreports を使ってみることにする。ここでは、以下のリポジトリを参考に作成していく。

 

アプリを作成する

 サンプル用にアプリを作成する。

 

gem をインストールする。

  • echo 'gem "thinreports-rails"' >> Gemfile
  • bundle

 

thinreports-rails の使い方は、READMD.md を参考にする。

 

scaffold で Food を作成する。

  • bin/rails g scaffold Food name:string
  • bin/rails db:migrate

 

サンプル用に、コンソールから食べ物のデータを作成する。

  • bin/rails c
  • Food.create(name: "ごはん")
  • Food.create(name: "ステーキ")

 

app/assets/reports ディレクトリを作成して、food_list.tlf を配置する。

  • mkdir app/assets/reports

f:id:matt-note:20190520140639p:plain

 

app/controllers/foods_controller.rb に private メソッドを追加する。

f:id:matt-note:20190520140937p:plain

 

app/controllers/foods_controller.rb の index アクションで定義したメソッドを呼び出す。

f:id:matt-note:20190520134357p:plain

 

app/views/foods/index.html.erb で PDF を出力するリンクを作成する。

f:id:matt-note:20190520134553p:plain

 

サーバーを起動して、localhost/foods にアクセスして、リンクをクリックする。

f:id:matt-note:20190520134745p:plain

 

food_list.pdf を作成できた。

f:id:matt-note:20190520134808p:plain