FuelphpでER図(論理)を自動生成する話
ここ最近推しているPlantUMLですが、
業務でFuelphpを利用することがあり、
せっかくなので自動でER図を生成するパッケージを作ってみました。
既存のDB設計の問題点
通常の場合ですと私がよくやるケースが2パターンあります。
- DBの設計書を作り、それに基づいたDB構築/更新がある場合は実態・設計両方を直す
問題点:二度手間で、更新し忘れるケースが発生する
2.DB構成から自動でER図作成
問題点:リレーションを必ずしも貼るわけではないので自動生成後修正が必要
どちらも利用する実態ベースで乖離が生まれることもあり、特に複数人開発をすると顕著に現れてしまいます
fuelphpでのモデルから設計書を生成
上記問題は、そういった設計書の可視化パッケージがあるといいんですが、fuelphpにはない(そもそも開発が止まっている)ようなので今回はパッケージを作成してみました
fuelphp-er(https://github.com/ateliee/fuelphp-er)
インストール方法
利用したいfuelphpプロジェクトにてpackageの追加をします。
composer require ateliee/fuelphp-er
fuel/config/config.phpに下記を追加
'packages' => array(
'orm',
'fuelphp-er'
),
追加すると下記のようにタスクが利用できるようになります。
php oil refine diagram:generate > er.puml
実行結果をファイル保存すればOK
一応SVGやPNGもサポートしています。(要java環境なので悪しからず)
# PNGの場合
php oil refine diagram:generate --png > er.png
# SVGの場合
php oil refine diagram:generate --svg > er.svg
言わずもがなfuelphpはトレンドではなく、廃れていく一方なので新規開発の場合はlaravelとかを使いましょうね!