フォーム自動生成モジュール「InfyOm Laravel Generator」を導入した

NO IMAGE

Laravelをベースとした、フォーム自動生成モジュール「InfyOm Laravel Generator」を試してみました。

このモジュールは、コマンドだけでフォーム作成作業に必要な
フォームプログラムファイル生成、DB生成、テストケース作成を行ってくれるものです。

今回は、セットアップまでをまとめました。

*composer やLaravelを理解している方向けに書いていますので、わからない方は質問してください。

Laravel インストール

Laravelの5.4系をインストールします。

composer create-project --prefer-dist laravel/laravel data "5.4.*"

InfyOm Laravel Generator セットアップ

必要なパッケージをインストールします。

*ターミナルまたはコマンドプロンプトを起動して、実行してください。
*$ で始まる部分は、入力コマンドです。

$ cd data
$ vi composer.json
"barryvdh/laravel-debugbar": "^2.3",
"barryvdh/laravel-elfinder": "^0.3.10",
"barryvdh/laravel-ide-helper": "^2.3",
"doctrine/dbal": "2.3",
"infyomlabs/adminlte-templates": "5.4.x-dev",
"infyomlabs/laravel-generator": "5.4.x-dev",
"laravel/framework": "5.4.*",
"laravel/tinker": "~1.0",
"laravelcollective/html": "^5.4.0",
"yajra/laravel-datatables-buttons": "^1.0",
"yajra/laravel-datatables-oracle": "^7.5"
$ composer update

config/app.php のproviders、aliases 変数に以下の値を追記します。

$ vi config/app.php
'providers' => [
.....
\InfyOm\Generator\InfyOmGeneratorServiceProvider::class,
\InfyOm\AdminLTETemplates\AdminLTETemplatesServiceProvider::class,
Yajra\Datatables\DatatablesServiceProvider::class,
Yajra\Datatables\ButtonsServiceProvider::class,
Barryvdh\Debugbar\ServiceProvider::class,
Barryvdh\Elfinder\ElfinderServiceProvider::class,
Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class,
'aliases' => [
.....
'Form' => Collective\Html\FormFacade::class,
'Html' => Collective\Html\HtmlFacade::class,
'Flash' => Laracasts\Flash\Flash::class,

app/Providers/RouteServiceProvider.php の mapApiRoutes ファンクションを変更します。

$ vi app/Providers/RouteServiceProvider.php
protected function mapApiRoutes()
{
// Route::prefix('api')
// ->middleware('api')
// ->namespace($this->namespace)
// ->group(base_path('routes/api.php'));
Route::prefix('api')
->middleware('api')
->as('api.')
->namespace($this->namespace."\\API")
->group(base_path('routes/api.php'));
}

artisan コマンドを実行します。

$ php artisan vendor:publish
$ php artisan infyom:publish
$ php artisan infyom.publish:layout
Existing routes web.php file detected. Should we add standard auth routes? (y|N) : (yes/no) [no]:
> yes
$ php artisan infyom.publish:templates
$ php artisan vendor:publish --tag=datatables-buttons

データベース設定

SQLite データベースの設定をします。

$ touch database/database.sqlite
$ vi .env
DB_CONNECTION=sqlite
#DB_HOST=127.0.0.1
#DB_PORT=3306
#DB_USERNAME=homestead
#DB_PASSWORD=secret
$ php artisan migrate

ログイン認証機能有効化

Laravelに搭載されている、ログイン認証機能を有効にします。

$ php artisan make:auth
$ php artisan migrate

表示確認

ローカルサーバを起動します。

php artisan serve

ブラウザからアクセス確認を行います。
*正常にホーム画面が表示されたら、完了です。

http://127.0.0.1:8080

 

参考リンク

http://labs.infyom.com/laravelgenerator/

http://labs.infyom.com/laravelgenerator/docs/5.4/introduction

Web技術カテゴリの最新記事