经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » PHP » 查看文章
Laravel自动生成UUID,从建表到使用详解
来源:jb51  时间:2019/10/24 12:06:55  对本文有异议

gitHub地址: https://github.com/EmadAdly/laravel-uuid.git

1、安装依赖

  1. composer require emadadly/laravel-uuid

2、然后在config/app.php的providers里添加ServiceProvider

  1. 'providers' => [
  2. ...
  3. Emadadly\LaravelUuid\LaravelUuidServiceProvider::class,
  4. ],

3、然后根目录执行

  1. php artisan vendor:publish --provider="Emadadly\LaravelUuid\LaravelUuidServiceProvider"

执行完的效果是:在config下生成uuid.php

4、使用

(1)主键id不使用uuid,新建一行储存uuid的列

在config/uuid.php

  1. 'default_uuid_column' => 'uuid',

(2) 主键id就直接使用uuid

在config/uuid.php中将uuid改成id

  1. 'default_uuid_column' => 'id',

在migration中建表时:

  1. Schema::create('sys_user', function (Blueprint $table) {
  2. $table->uuid('id')->unique();
  3. ....
  4. $table->timestamps();
  5. });

在实体类如User.php中使用uuid,加入

  1. use Uuids;
  2. ....
  3. /**
  4. * Indicates if the IDs are auto-incrementing.
  5. *
  6. * @var bool
  7. */
  8. public $incrementing = false;

然后在Controller中在新增数据时id默认可以直接使用uuid

For Example:

  1. public function store(Request $request)
  2. {
  3. $data = $request->json()->all();
  4. $Article=Article::create($data);
  5. return response()->json($Article);
  6. }

修改自带的created_at和updated_at

  1. const UPDATED_AT='update_date';
  2. const CREATED_AT = 'create_date';

以上这篇Laravel自动生成UUID,从建表到使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持w3xue。

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号