Laravel自动生成UUID,从建表到使用详解
gitHub地址: https://github.com/EmadAdly/laravel-uuid.git
1、安装依赖
composer require emadadly/laravel-uuid
2、然后在config/app.php的providers里添加ServiceProvider
'providers' => [ ... Emadadly\LaravelUuid\LaravelUuidServiceProvider::class, ],
3、然后根目录执行
php artisan vendor:publish --provider="Emadadly\LaravelUuid\LaravelUuidServiceProvider"
执行完的效果是:在config下生成uuid.php
4、使用
(1)主键id不使用uuid,新建一行储存uuid的列
在config/uuid.php
'default_uuid_column' => 'uuid',
(2) 主键id就直接使用uuid
在config/uuid.php中将uuid改成id
'default_uuid_column' => 'id',
在migration中建表时:
Schema::create('sys_user', function (Blueprint $table) { $table->uuid('id')->unique(); .... $table->timestamps(); });
在实体类如User.php中使用uuid,加入
use Uuids; .... /** * Indicates if the IDs are auto-incrementing. * * @var bool */ public $incrementing = false;
然后在Controller中在新增数据时id默认可以直接使用uuid
For Example:
public function store(Request $request) { $data = $request->json()->all(); $Article=Article::create($data); return response()->json($Article); }
修改自带的created_at和updated_at
const UPDATED_AT='update_date'; const CREATED_AT = 'create_date';
以上这篇Laravel自动生成UUID,从建表到使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Laravel 自定命令以及生成文件的例子
以创建service层为例子 1.执行命令 php artisan make:command ServiceMakeCommand 2.在app\Console\Commands 下就会多出一个 ServiceMakeCommand.php 文件 ,更改其内容为一下内容 ( 注意: 1.承了GeneratorCommand类, 2.protected $signature = 'make:service {name}'; 中{name}必须要有 <?php namespace App\Conso
-
Laravel 自动生成验证的实例讲解:login / logout
Laravel 自动授权讲解 看到这部分文档,经常看见的一句话就是php artisan make:auth,经常好奇这段代码到底干了什么,现在就来扒一扒. 路由 路由文件中会新加入以下内容: Auth::routes(); Route::get('/home','HomeController@index')->name('home'); 首先先是Auth::route();,这句代码等于以下全部设置(文件位置是\Illuminate\Routing\Router.php): /** * Reg
-
laravel-admin自动生成模块,及相关基础配置方法
一.模型创建.数据迁移.以及关联模型控制器 $ php artisan make:model Brand -m //创建模型并生成迁移文件 $ php artisan migrate //运行迁移 $ php artisan admin:make BrandController --model=App\Brand //创建关联Brand模型的控制器 二.问题:创建模型后,会生成一个临时文件(php artisan make:model Brand -m) 路径:database/migratio
-
laravel批量生成假数据的方法
D:\phpStudy\WWW\api.douxiaoli.com\database\factories\ModelFactory.php D:\phpStudy\WWW\BCCKidV1.0\vendor\fzaninotto\faker\src\Faker\Generator.php $factory->define(App\User::class, function (Faker\Generator $faker) { static $password; #定义假数据长什么样子 retur
-
Laravel自动生成UUID,从建表到使用详解
gitHub地址: https://github.com/EmadAdly/laravel-uuid.git 1.安装依赖 composer require emadadly/laravel-uuid 2.然后在config/app.php的providers里添加ServiceProvider 'providers' => [ ... Emadadly\LaravelUuid\LaravelUuidServiceProvider::class, ], 3.然后根目录执行 php artisan
-
android studio 打包自动生成版本号与日期,apk输入路径详解
一. 打开项目选择如图示1 (build.gradle 项目位置) 二. 1. build.gradle 文件添加内容如下.gradle是[com.android.tools.build:gradle:3.0.0 以下版本] android{ defaultConfig {...} 自动追加版本号和版本名称 android.applicationVariants.all { variant->variant.outputs.each { output-> output.outputFile =
-
django连接mysql数据库及建表操作实例详解
本文实例讲述了django连接mysql数据库及建表操作.分享给大家供大家参考,具体如下: django连接mysql数据库需要在project同名的目录下面的__init__.py里面加入下面的东西 import pymysql pymysql.install_as_MySQLdb() 找到settIngs里面的database设置如下 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 's22',
-
android自动生成dimens适配文件的图文教程详解(无需Java工具类)
在编写ui界面时因为手机分辨率大小不同,所以展现出来的效果也是不同的,这个时候就需要考虑适配器,让根据手机分辨率自动适配相应尺寸来展示界面,可以提高用户的体验感. 1.首先安装插件ScreenMatch,安装成功之后android studio会提示重启 2.在res->values下创建一个dimens文件,将以下代码复制进去.如果不创建这个文件一下操作会不成功导致项目重启. <dimen name="common_margin">@dimen/dp_15</
-
Activiti工作流学习笔记之自动生成28张数据库表的底层原理解析
网上关于工作流引擎Activiti生成表的机制大多仅限于四种策略模式,但其底层是如何实现的,相关文章还是比较少,因此,觉得撸一撸其生成表机制的底层原理. 我接触工作流引擎Activiti已有两年之久,但一直都只限于熟悉其各类API的使用,对底层的实现,则存在较大的盲区. Activiti这个开源框架在设计上,其实存在不少值得学习和思考的地方,例如,框架用到以命令模式.责任链模式.模板模式等优秀的设计模式来进行框架的设计. 故而,是值得好好研究下Activiti这个框架的底层实现. 我在工作当中现
-
oracle自动生成uuid的实现方法
目录 oracle自动生成uuid方法 1.创建一个表 2.生成uuid的语句 3.添加几条数据,查询就可以看到效果 oracle获取UUID乱码 oracle自动生成uuid方法 1.创建一个表 create table t_user(id varchar2(200),name varchar2(200)); 2.生成uuid的语句 alter table t_user modify id default sys_guid(); update t_user set id = sys_guid(
-
MySQL数据库如何给表设置约束详解
目录 一.PK(主键约束) 1.什么是主键? 2.怎么设置主键? 二.FK(外键约束) 1.什么是外键 2.怎么设置外键 三.unique(唯一约束) 1.什么是唯一约束? 2.如何设置唯一约束 四.notnull(非空) 五.default(默认值) 六.auto_increment(自增) 一.PK(主键约束) 1.什么是主键? 在了解主键之前,先了解一下什么是关键字 关键字:在表中具有唯一性的字段,比如一个人的身份证号,学号.一个表中可以有多个关键字. 主键也叫主关键字,就是由一个或多个关
-
语言编程花絮内建构建顺序示例详解
目录 1 构建 顺序 1.1 交叉编译 1.2 设置 2 构建测试支持 1 构建 顺序 依据词法名顺序 当导入一个包,且这个包 定义了 init(), 那么导入时init()将被执行. 具体执行顺序: 全局变量定义时的函数 import 执行导入 -> cont 执行常量 --> var 执行变量 --> 执行初始化 init() --> 执行 main() ----> main import pk1 ---> pk1 const ... import pk2 ---&
-
python之sqlalchemy创建表的实例详解
python之sqlalchemy创建表的实例详解 通过sqlalchemy创建表需要三要素:引擎,基类,元素 from sqlalchemy import create_engine from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import Column,Integer,String 引擎:也就是实体数据库连接 engine = create_engine('mysql+pymysql://go
随机推荐
- java实现汉字转unicode与汉字转16进制实例
- Java枚举使用方法详解
- spring boot 使用@Async实现异步调用方法
- Python字符串中查找子串小技巧
- mysql中limit的用法深入分析
- bootstrap学习使用(导航条、下拉菜单、轮播、栅格布局等)
- python中的__init__ 、__new__、__call__小结
- escape函数解决js中ajax传递中文出现乱码问题
- 分享下GET和POST的真正区别
- Dell PowerEdge服务器工具下载集合
- 五种SQL Server分页存储过程的方法及性能比较
- SQL2005CLR函数扩展 - 关于山寨索引
- JS小功能(onmouseover实现选择月份)实例代码
- Serv-U中虚拟目录的设置方法(文字+图文)
- Java编写猜数字小游戏
- Service Unavailable产生的原因
- ThinkPHP的URL重写问题
- Android软键盘显示模式及打开和关闭方式(推荐)
- oracle中print_table存储过程实例介绍
- Vue中的作用域CSS和CSS模块的区别