janareit / laravel5generators
Laravel 5 生成器
2.4.0
2016-04-21 05:53 UTC
Requires
- php: >=5.5.9
- doctrine/dbal: ~2.5
- illuminate/filesystem: 5.2.*
- illuminate/support: 5.2.*
- pingpong/support: 2.2.*
README
(适用于 5.2)
这是一个从 http://sky.pingpong-labs.com/docs/2.0/generators 定制的分支,官方文档可在那里找到。
它分支出来是为了更好地满足我在不同的 Laravel 5 项目中进行快速脚手架的需求。
原版增加/更改
- 添加并脚手架了路由模型绑定功能到现有文件
- 控制器动作升级,可以注入模型类以利用路由模型绑定
- 现在可以从脚手架命令中输入视图的 'extends' 功能
- 'prefix' 可以有多级深度。例如
--prefix=Main/Admin
- 模型存储到
App\Repositories
文件夹 - 'responsive' 生成响应式索引视图而不是表格样式
示例用法
准备
- 要正确使用脚手架编辑
RouteServiceProvider.php
文件,您需要在boot
方法内添加一行注释
//scaffolded routes will appear here [do not remove]
- 将提供者添加到 app.php 配置
'janareit\laravel5generators\GeneratorsServiceProvider::class'
从控制台运行,例如
php artisan generate:scaffold moulding_machine --fields="name:string, number:tinyInteger:unsigned, active:boolean" --prefix=Masterdata/Manufacturing --responsive --force --extends="layouts.master" --no-question
PS:出于安全原因,布局.master 将存储到视图根目录,以免您不小心覆盖原始 master。如果您没有布局 master,应将其移动到 resources/views/layouts
这应该会输出(无需提问,因为最后一个标志声明了)
Model created successfully.
Migration created successfully.
Seed created successfully.
Form request created successfully.
Form request created successfully.
Controller created successfully.
Migrated: 2015_06_05_113543_create_moulding_machines_table
View created successfully.
View created successfully.
View created successfully.
View created successfully.
View created successfully.
View created successfully.
Route appended successfully.
RouteServiceProvider appended successfully.
生成的文件是
app/Http/Controllers/Masterdata/Manufacturing/MouldingMachinesController.php
app/Http/Requests/Masterdata/Manufacturing/Machines/CreateMouldingMachineRequest.php
app/Http/Requests/Masterdata/Manufacturing/Machines/UpdateMouldingMachineRequest.php
app/Repositories/Masterdata/Manufacturing/MouldingMachine.php
database/migrations/2015_06_05_113543_create_moulding_machines_table.php
database/seeds/MouldingMachinesTableSeeder.php
resources/views/masterdata/manufacturing/moulding_machines/create.blade.php
resources/views/masterdata/manufacturing/moulding_machines/edit.blade.php
resources/views/masterdata/manufacturing/moulding_machines/form.blade.php
resources/views/masterdata/manufacturing/moulding_machines/index.blade.php
resources/views/masterdata/manufacturing/moulding_machines/show.blade.php
resources/views/layouts.master.blade.php //this is in case you generate new layout. For security it's not overwriting directly to layouts path.
现有文件的添加
routes.php
Route::resource('masterdata/manufacturing/moulding_machines', 'Masterdata\Manufacturing\MouldingMachinesController');
RouteServiceProvider.php
$router->model('moulding_machines', 'App/Repositories/Masterdata/Manufacturing/MouldingMachine');
如果一切正常,您应该在您的域名的 masterdata/manufacturing/moulding_machines
URL 上看到新创建的 CRUD 页面。
致谢
感谢 Pingpong labs 的大家 (https://github.com/pingpong-labs/generators)!