gitHub地址: https://github.com/EmadAdly/laravel-uuid.git
1、安装依赖
代码语言:javascript复制composer require emadadly/laravel-uuid
2、然后在config/app.php的providers里添加ServiceProvider
代码语言:javascript复制'providers' = [
...
EmadadlyLaravelUuidLaravelUuidServiceProvider::class,
],
3、然后根目录执行
代码语言:javascript复制php artisan vendor:publish --provider="EmadadlyLaravelUuidLaravelUuidServiceProvider"
执行完的效果是:在config下生成uuid.php
4、使用
(1)主键id不使用uuid,新建一行储存uuid的列
在config/uuid.php
代码语言:javascript复制'default_uuid_column' = 'uuid',
(2) 主键id就直接使用uuid
在config/uuid.php中将uuid改成id
代码语言:javascript复制'default_uuid_column' = 'id',
在migration中建表时:
代码语言:javascript复制Schema::create('sys_user', function (Blueprint $table) {
$table- uuid('id')- unique();
....
$table- timestamps();
});
在实体类如User.php中使用uuid,加入
代码语言:javascript复制use Uuids;
....
/**
* Indicates if the IDs are auto-incrementing.
*
* @var bool
*/
public $incrementing = false;
然后在Controller中在新增数据时id默认可以直接使用uuid
For Example:
代码语言:javascript复制 public function store(Request $request)
{
$data = $request- json()- all();
$Article=Article::create($data);
return response()- json($Article);
}
修改自带的created_at和updated_at
代码语言:javascript复制 const UPDATED_AT='update_date';
const CREATED_AT = 'create_date';
以上这篇Laravel自动生成UUID,从建表到使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考。