6
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

ymlから簡単にerdを生成するyml2erdを作った

Posted at

先日複数人でDB設計をしている時「erdあった方が分かりやすいから作ろう」って話になり作ろうとしたのですが簡単にerdをシュッと生成するツールが見つからなかったので作りました。

yml2erd

既存ツールとしてMySQL Workbenchなどあるにはあるのですが、作るのが面倒くさい + 作り方覚えるのが面倒くさい + 手でポチポチするのしんどいみたいな感じだったので自作の道を選びました。

また、Haskell製のerdというツールもあるのですが使いこなせませんでした・・・

インストール

まず、graphvizという描画ツールをインストールします。macなら

$ brew install graphviz

で入ります。他はこちらを参考にしてください。

次に、yml2erdをインストールします。

$ gem install yml2erd

これでインストールできました。

使い方

インストールができたら実際にerdを生成します。今回はsample.ymlを使用します。

$ yml2erd convert sample.yml

これで生成されたoutput.pngがerdとなります。また、生成するファイルはパス指定できて

$ yml2erd convert sample.yml -o hoge.png

とするとhoge.pngが生成されます。

image.png

pngだけでなくsvgでも出力できます。詳しくはREADMEを参照してください。

ymlの書き方

基本的には以下の形式です。間違ってたらエラーが出ます。

<テーブル名>:
  columns:
    - <カラム名>: <カラムの型>
  relations:
    belongs_to:
      - <テーブル名>
    has_many:
      - <テーブル名>

参考

rails-erd

http://qiita.com/rubytomato@github/items/51779135bc4b77c8c20d
http://www.graphviz.org/doc/info/shapes.html

http://qiita.com/komeiy/items/6bb8621620337e0308f4
http://karur4n.hatenablog.com/entry/2015/02/20/155411

6
5
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
6
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?