Edited at

Laravel「Migration&QUeryBuilder(SQL)」をER図から自動生成!! 面倒なことは任せちゃえ!


◇アプリ名: ERD & Laravel

『Laravel Migrationファイル生成』 『クエリービルダー生成』 機能は、まだβ版ですがER図で設計したあとにベーステンプレートのMigrationを作成、QueryBuilderだけでも、全て書かなくて良いので捗るはずです。

※アプリ名はLaravelに寄せたので変更しました。


新機能 「ER図から Query Builder 」も生成

外部キーの制約どおりに生成するようにしています。

(PWA CacheAPIが使用されているのでキャッシュで以前の画面が出る人もいるかも知れません。)

2019_11_03_233247_create_t_company_users_table_php.jpg

※ 外部キー制約がある場合、Migrationの順番が大事です。


★重要参考URL:【メモ】Laravelマイグレーションで外部キー制約をつけるときに気をつけること


サイトデザインは少しだけLaravelカラーに

ERD___Laravel.jpg

リンク: https://venezia-works.com/sql/


ER図をかいたら保存!!

ER_diagram_Quick.jpg


作成したER図はCloud(Firebase) or ブラウザに保存

ER_diagram_Quick.jpg

リンク: https://venezia-works.com/sql/


MySQLのDDL生成。またはMigrationファイル生成どちらも可能です。Migrationの場合はテーブル分のファイルがZip圧縮されて全てのMigrationファイルが作成されます。

中身はみなさんご存知の以下のようなCODEです。

2019_10_25_162015_create_gs_user_table_table_php.jpg


◇使用している技術


  • HTML / CSS / Vanilla JS

  • PWA (ChcheAPI, ServiceWorker, Manifest)

  • Firebase / WWWSQLDesigner

  • PHP7.2 / Laravel5.5(Migration検証) / MAMP

  • ツール: PHPStorm、GoogleChrome

Chrome Auditsの結果 (画像とFirebaseJS外部ファイルがPerfomanceに影響してるようですが十分ですね)

ER_Diagram___Laravel2.jpg

リンク: https://venezia-works.com/sql/


こんなに早くできたのは各種APIやOSSのおかげ


  • API(Firebase)を利用できたこと

  • WWW SQL Designer を利用できたこと(1日コード眺めるくらいでどのような事をやってるかわかったので、必要な修正には時間がかからなかった。)

  • Laravelを少し前に触ってたので、Migrationのドキュメントを読んでいた。そのため、全てではないがER図から生成できるカラムや記法等の調査にも時間がかからなかった。

  • 作るのが楽しい

開発の進めかたですが、個人としては「アウトプット・ファースト」を最優先にしています。

大体いつもα版(目的を満たす機能、動作ができてる最低限の状態)を一週間と決めて開発しています。

そこを軸に、大事な目的にあった機能を先行して作り込み、機能動作優先、見た目など細かい部分などはだいぶ見ないで進めました。現時点の進捗としては満足してます。いつもデザインはリリース後に調整していくので、このスピード感を出すためには、この方法が良いと思っています(まずは動くが優先、モチベーションも保ちやすい)。

少しでもこのツールが役に立てば幸いです。