บอกเลย CRUD (Create, read, update and delete generator) ใน laravel 5 หายากมากจน GII ของ YII ดูเทพขึ้นมาทันที ตัวที่พอจะเทียบได้ก็มี Laravel Generator
ติดตั้งโดย
- เพิ่ม package InfyOmLabs/laravel-generator ในไฟล์ composer.json[code language=”text” title=”composer.json”]
"require": {
…
"infyomlabs/adminlte-templates": "dev-master",
"infyomlabs/generator-builder": "dev-master",
"infyomlabs/laravel-generator": "dev-master",
"infyomlabs/swagger-generator": "dev-master",
"jlapp/swaggervel": "dev-master"
"laravelcollective/html": "5.2.*"
…
},
[/code] - run command[code language=”text” title=”command”]composer update[/code]
- เปิดไฟล์ \config\app.php เพิ่ม[code language=”php” title=”\config\app.php”]
…
‘providers’ => [
…
\InfyOm\Generator\InfyOmGeneratorServiceProvider::class,
\InfyOm\GeneratorBuilder\GeneratorBuilderServiceProvider::class,
Collective\Html\HtmlServiceProvider::class,
Laracasts\Flash\FlashServiceProvider::class,
Prettus\Repository\Providers\RepositoryServiceProvider::class,
…
],‘aliases’ => [
‘Flash’ => Laracasts\Flash\Flash::class,
‘Form’ => Collective\Html\FormFacade::class,
‘Html’ => Collective\Html\HtmlFacade::class,],[/code]
- Publish ไฟล์ไปโฟลเดอร์ public โดย run command[code language=”text” title=”command”]php artisan vendor:publish
php artisan infyom:publish[/code] - Run routes Publish Command[code language=”text” title=”command”]php artisan infyom.publish:generator-builder[/code] จะเพิ่ม rute [code language=”php”]Route::get(‘generator_builder’, ‘\InfyOm\GeneratorBuilder\Controllers\[email protected]’);
Route::get(‘field_template’, ‘\InfyOm\GeneratorBuilder\Controllers\[email protected]’);
Route::post(‘generator_builder/generate’, ‘\InfyOm\GeneratorBuilder\Controllers\[email protected]’);[/code] - Publish view โดย run command[code language=”text” title=”command”]php artisan infyom.publish:generator-builder –views[/code]
- เปิดไฟล์ \config\infyom\generator_builder.php แก้เป็น[code language=”php” title=”\config\infyom\generator_builder.php”]<?php
return [
‘views’ => [
‘builder’ => ‘infyom.generator-builder.builder’,
‘field-template’ => ‘infyom.generator-builder.field-template’
]
];[/code] - เปิดไฟล์ \config\infyom\laravel_generator.php แก้ ‘templates’ => ‘core-templates’, เป็น ‘templates’ => ‘adminlte-templates’,
ทดลองใช้
- ทดลองเรียกดู http://localhost/…/generator_builder
- แต่กรอกอะไรก็เจอ error Fail!result ลองจับ traffic ดูก็เห็นว่ามี error MethodNotAllowedHttpException in RouteCollection.php line 218: เปิดไฟล์ \resources\views\infyom\generator-builde\builder.blade.php บรรทัด 321 แก้ type: “POST” เป็น method: “POST”,
About the author