Laravel集成文档:
https://labs.infyom.com/laravelgenerator/docs/7.0/installation
一、引入composer包
"infyomlabs/laravel-generator": "7.0.x-dev", "laravelcollective/html": "^6.1", "infyomlabs/adminlte-templates": "7.0.x-dev", "doctrine/dbal": "~2.3",
二、修改config/app.php
'Form' => Collective\Html\FormFacade::class, 'Html' => Collective\Html\HtmlFacade::class, 'Flash' => Laracasts\Flash\Flash::class,
Update API Routes
protected function mapApiRoutes() { Route::prefix('api') ->middleware('api') ->as('api.') ->namespace($this->namespace."\\API") ->group(base_path('routes/api.php')); }
发布配置
php artisan infyom:publish
打开web.php
php artisan infyom.publish:layout
执行 php artisan migrate 创建数据库表
这里面有一个坑,默认情况下,你是执行不成功的,需要将表结构进行如下设置。打开 database/migrations
2014_10_12_000000_create_users_table 改成如下配置:
Schema::create('users', function (Blueprint $table) { $table->id(); $table->string('name',255); $table->string('email',50)->unique(); $table->timestamp('email_verified_at')->nullable(); $table->string('password',255); $table->rememberToken(); $table->timestamps(); });
2014_10_12_100000_create_password_resets_table
public function up() { Schema::create('password_resets', function (Blueprint $table) { $table->string('email', 100)->index(); $table->string('token', 255); $table->timestamp('created_at')->nullable(); }); }
通过PHP脚本的形式启动项目
我们已经看到页面了,登录之前,先去注册一下。
脚本:
https://labs.infyom.com/laravelgenerator/docs/7.0/generator-options
Generate From Table php artisan infyom:scaffold $MODEL_NAME --fromTable --tableName=$TABLE_NAME Generate from specific connection (database) php artisan infyom:scaffold $MODEL_NAME --fromTable --tableName=$TABLE_NAME --connection=connectionName Skip File Generation 可以指定skip选项来跳过将不生成的文件 php artisan infyom:api_scaffold Post --skip=routes,migration,model
从json文件中生成 php artisan infyom:scaffold $MODEL_NAME --fieldsFile=./resources/model_schemas/AdmissionAssessmentRecord.json php artisan infyom:scaffold Aab --fieldsFile=./resources/model_schemas/AdmissionAssessmentRecord.json
在 config\infyom\laravel_genertor.php 中有一个 schema_files 参数,定义了 schema 配置文件存放位置,一般都在 resources/model_schemas/
在这个文件夹里新增一个 PostSchema.json 的文件。配置内容稍后讲解。
配置完成以后,执行命令
php artisan infyom:scaffold Aab --fieldsFile=./resources/model_schemas/AdmissionAssessmentRecord.json
配置简易说明
namedescription
name数据库字段名称
dbType数据库字段类型,例如:string:nullable:comment,' 密码混淆'
htlmType输入类型
validationsrequests 验证内容、下面会给案例
searchable搜索
fillablecreate 的时候允许插入的字段
primary主键
inForm在表单中出现(猜测)
inIndex可以搜索(猜测)
typerelation 模型关系
relation1tm 就是 1 对多咯,mtm 多对多,然后是关系连接字段
删除
如果觉得生成的数据有问题
可以执行回滚,这样会删除所有生成的文件。
php artisan infyom:rollback Post api