自作ツール

【Laravel手抜き術】DB設計からひな型コード一式を自動生成するツールを開発してみた。【ファクトリーとかも作るよ】

概要

指定形式のカンマ区切りCSVのテキストを入力するだけでDB設計からLaravelのひな型アプリのコードが自動生成できるアプリを開発したよ。

過去記事でマイグレーションだけを出力するやつ公開してたけど、他のコードも出力できるようにしてみた。

ツール

Laravelひな型コード生成機 from DB設計

CSVのような形式でテーブルレイアウトを記載すると、リスト表示や簡単な読み書きができるコードのひな型を生成してくれます。

具体的には、マイグレーション、モデル、コントローラー、フォームリクエスト、ルーティング、テンプレート、ビュー、シーダー、ファクトリーを出力します。

プロジェクト開始時のひな型づくりにどうぞ。コピペしてご利用ください。

仕様

  • 初期入力のデータにて仕様の雰囲気をつかんでください(雑)
  • カラムにid型を指定して、複合主キーにすると、uniqueなどを使った裏技みたいなの(?)で複合主キー+id列にオートインクリメントが設定されるマイグレーションが出力されます。
  • テーブル名は複数形想定です。出力されるモデル名などは単数形にしたかったのですができなかったので末尾1文字を落とすだけの処理で単数形と言い張っています。
  • リレーションは表現されません。
  • 主キーが単一の場合と複合の場合で内容が異なり、複数の主キーの場合はそのままだと新規登録ができません。
  • 複数のテーブル定義が入力された場合は、各フォームに続けて出力されます。見にくい場合はテキストファイルなどに書き出してからコピペすると見やすいと思います(投)。
  • 上記フォームにてCSV形式のチェックはしておりませんので入力値によっては予期せぬ動作をする場合があります。

マイグレーション用

モデル用

コントローラー用

フォームリクエスト用

ルーティング用(web.php)

ビューのテンプレート(views直下想定)

ビュー(views直下想定)

シーダー用

ファクトリー用

その他・特記事項

出力されたテキストはコピペして使用するなりしてください。

余談

データ作るとき、スプレッドシートとかで作るとやりやすいよ。

テーブル物理名, テーブル論理名, カラム物理名, カラム論理名, 型名, 長さ, NOT NULLフラグ, PKフラグ, デフォルト値

複合主キーかつid列にオートインクリメントを設定する裏技

いつもの

記事の内容およびツールの動作は無保証です。

  • この記事を書いた人
あっきー

あっきー

とある企業の研究者。研究分野以外に手を出しすぎて毎日が慌ただしい。 研究者の肩書きが正しいかどうかは万年の謎。 得意ジャンルはデータベースとセキュリティーですが、AIやIoT、アプリ開発など、手広く活動しています。

-自作ツール
-, , , , , , , , ,

Translate »