Laravel 使用 UUID

Laravel 使用 UUID

最近在写小程序的时候,需要后端提供 API 接口,后端是使用 Laravel 开发的 API 接口,出于数据安全等诸多因素,就在返回的数据中实现了简单的 UUID 集成。

软件版本:Laravel 5.6

由于 Laravel 5.6 自带了 UUID 的 package 支持,所有在开启 UUID 的时候,我们只需要做几步关键的设置即可:

1.数据表的设计指定 uuid

在 Model 对应的数据表设计的时候,需要通过类似下面的代码生成 uuid 支持:
图片描述
这里我们主要是修改了 id 字段的定义,不在使用默认的 increment() ,而是使用 uuid() 方法,不过在指定完 uuid() 之后,最好也记得加上 primary('id') 的定义。

2.Model 设置

Model 设置这一部分有两个关键的步骤,一是设置 $incrementing属性为 false

public $incrementing = false;

二是通过 boot() 方法自动维护 uuid

图片描述

3.重用为 trait 代码

有了前面的两个步骤,其实针对一个 Model 的uuid 设置基本上就完成了;不过我们是可以将有关 uuid 部分的代码做成一个 trait 的,因为有了 trait,我们的代码就可以重用了:

图片描述

所以,最后我们的代码差不多可以是这个样子的:

图片描述

我们来看一个最简单的数据返回示例:

图片描述

这样我们就达到了在提供 API 接口的时候返回 uuid 而不是自增的 id 的目的了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值