2014年7月4日金曜日

5-6 rails-erdでモデルのER図を生成する

 もー、ER図ってなんだよ!

参考:
実体関連モデル

 そういうことですか。データベースのデータモデルを図として関連性をまとめたものらしい。
 で、rails-erdでは実際に構築されているdbをER図化できるそうな。すごいね。

 Gemfileにrails-erdを追加すると、rakeタスクとしてerdが追加されPDFとしてER図が出力できるようになる。でも裏でGraphvizという秒がツールを使うので、別途インストールが必要。自動化しろって!
 /usr/local$brew install graphviz
Error: You must `brew link libpng' before graphviz can be installed
Warning: It appears you have MacPorts or Fink installed.
Software installed with other package managers causes known problems for
Homebrew. If a formula fails to build, uninstall MacPorts/Fink and try again.
/usr/local$brew link libpng
Linking /usr/local/Cellar/libpng/1.6.10...
Error: Could not symlink include/libpng16
/usr/local/include is not writable.
エラーが出て言われた通りのコマンドを打って、最終的に書き込めない、権限が無い、と言われてしまった。/usr/local/includeの所有者はrootで、自分にはreadしかできない模様。この借りている呪われたMacのせいか。
 結果を見たかったけど、rootのパスワード知らないし、とりあえずここはパス。 あとで確認しよう。

---

 とりあえずgraphvizはインストーラをダウンロードしてなんとかした。
 rake erdするだけで簡単にモデル相関図が生成されるようになり、モデル設計にはいろいろ役に立ちそう。自分で考えるときも、複数人であれこれ突っつくのにも良さそうです。
rake erd attributes=foreign_keys,primary_keys,timestamps,inheritance,content
なんてオプションを付けると、省略されていたインデックスとかが省略されずに全部入りで表示できるみたい。

参考:
Rails ERDを試してみた

0 件のコメント:

コメントを投稿