unique 验证规则后接 . Auth::id () 的作用是?

问答 Wayne02 ⋅ 于 5个月前 ⋅ 最后回复由 Wayne02 5天前 ⋅ 824 阅读

不明白
'name' => 'required|between:3,25|regex:/^[A-Za-z0-9\-\_]+$/|unique:users,name,' . Auth::id()
. Auth::id() 是什么作用,后面接了个点语法让我有点懵逼。

本文章首发在 Laravel China 社区
本帖已被设为精华帖!
本帖由系统于 2个月前 自动加精
最佳答案
  • Summer 站长 @ laravel-china.org

    每一个规则,是用 | 符号分开的:

    'name' => 'required|between:3,25|regex:/^[A-Za-z0-9-_]+$/|unique:users,name,' . Auth::id()

    以上分解下来,是以下规则;

    • required —— 必须输入;
    • between:3,25 —— 字符数在 3 ~ 25 范围内;
    • regex:/^[A-Za-z0-9-_]+$/ —— 正则表达式,过滤只允许字母大小写、数字、横杆和下划线;
    • unique:users,name,' . Auth::id() —— unique 数据库唯一,在 users 数据表里,字段为 name,Auth::id() 指示将此 ID 排除在外。

    unique 的完整格式为:

    unique:table,column,except,idColumn

    完整意思为:

    在 table 数据表里检查 column ,除了 idColumn 为 except 的数据。

    except 一般在『更新』的表单验证里使用,假设你已经注册了 summer 用户,在更新 summer 用户的表单验证时,你要验证数据库里 summer 用户名是否是唯一的,因为你的数据库里已经有 summer 用户了,所以必须将 summer 用户排除,否则永远是验证不通过。

    参考 文档

    5个月前 23
回复数量: 5
  • Summer 站长 @ laravel-china.org

    每一个规则,是用 | 符号分开的:

    'name' => 'required|between:3,25|regex:/^[A-Za-z0-9-_]+$/|unique:users,name,' . Auth::id()

    以上分解下来,是以下规则;

    • required —— 必须输入;
    • between:3,25 —— 字符数在 3 ~ 25 范围内;
    • regex:/^[A-Za-z0-9-_]+$/ —— 正则表达式,过滤只允许字母大小写、数字、横杆和下划线;
    • unique:users,name,' . Auth::id() —— unique 数据库唯一,在 users 数据表里,字段为 name,Auth::id() 指示将此 ID 排除在外。

    unique 的完整格式为:

    unique:table,column,except,idColumn

    完整意思为:

    在 table 数据表里检查 column ,除了 idColumn 为 except 的数据。

    except 一般在『更新』的表单验证里使用,假设你已经注册了 summer 用户,在更新 summer 用户的表单验证时,你要验证数据库里 summer 用户名是否是唯一的,因为你的数据库里已经有 summer 用户了,所以必须将 summer 用户排除,否则永远是验证不通过。

    参考 文档

    5个月前 23
  • @shijf 建议你去通读一下 php 文档,太基础了

    2个月前
  • @shijf 如果 Auth::id() 的值为1,name的验证规则为:

    'name' => 'required|between:3,25|regex:/^[A-Za-z0-9-_]+$/|unique:users,name,1'

    2个月前
  • shijf 软件工程师 @ 石家庄瑞中电子科技有限公司

    @王成涛 欧克,明白了,我想通了,感谢

    2个月前
  • emmmm,没想到好早以前提的问题这么火,看来我不是一个人。。

    2个月前 1
您需要登陆以后才能留下评论!

Composer 中国全量镜像

Top 250 扩展包

Lumen 中文文档

Laravel 速查表

Laravel 中文文档

Laravel 项目开发规范

Laravel 开发环境部署

Composer 中文文档

Elasticsearch-PHP 中文文档

Lumen 中文文档

GraphQL PHP 中文文档

社区文档撰写指南

TDD 构建 Laravel 论坛笔记

PHP PSR 标准规范

PHP 设计模式全集

Dingo API 中文文档