LoginSignup
76
67

More than 5 years have passed since last update.

RailsアプリでER図とかクラス図を作る

Posted at

あんまり日常的に開発で使うことなさそうだけど、誰かにアプリの概要を説明したり、QiitaとかでサンプルアプリのER図を見せたい時とかに使えるGemたち。

  • preston/railroady
  • voormedia/rails-erd

この2つ。railroadyの方はモデルのER図だけじゃなくて、コントローラーなどのクラス図なども作成できる。

前提

  • Rails v4.x
  • Graphviz v2.22

Graphvizというパッケージが必要になる。GraphvizとはDOT言語というスクリプトをグラフに描画してくれる良い感じのやつらしい。どうでもいいけど、DOT言語ってカッコいいな…。

Graphvizのインストール

yum系

command
$ sudo yum install graphviz

Mac

command
$ brew install graphviz

railroady

インストール

Gemfile
gem "railroady"
command
$ bundle install

使い方

command
# 全部を対象に出力
$ bundle exec rake diagram:all

これで/doc/ディレクトリにsvgファイルが保存される。ボリュームの少ないサンプルアプリを対象にやったから、ちょっとイメージがわきにくいけど…。こんな感じの図が出力される。

  • スクリーンショット 2014-10-12 15.04.44.png
  • スクリーンショット 2014-10-12 15.04.58.png
  • スクリーンショット 2014-10-12 15.05.11.png
  • スクリーンショット 2014-10-12 15.05.04.png
command
$ bundle exec railroady -M | dot -Tsvg > models.svg

モデルER図だけ表示したいときは-Mオプションを使う。

rails-erd

インストール

Gemfile
gem "rails-erd"
command
$ bundle install

使い方

command
$ bundle exec rake erd

デフォルトだと、rails-erdの方が見やすいかもしれない。

  • スクリーンショット 2014-10-12 14.44.20.png

今回は、RailsアプリだからGemとかで良いんだけど、環境とか言語にあまり左右されずに純粋にモデル図とかを書きたいとき、どんなツールがいいんだろ…。できれば設定ファイルを書いてコマンドで出力…みたいなシンプルな奴がいいんだけどなー。

76
67
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
76
67