iis服务器助手广告
返回顶部
首页 > 资讯 > 后端开发 > GO >Golang 验证器自定义枚举验证规则
  • 391
分享到

Golang 验证器自定义枚举验证规则

2024-02-09 07:02:16 391人浏览 安东尼
摘要

PHP小编小新今天给大家介绍一款强大的golang验证器——自定义枚举验证规则。随着Golang的流行,越来越多的开发者开始使用它来构建高效、可靠的应用程序。而验证器是其中一个重要的工

PHP小编小新今天给大家介绍一款强大的golang验证器——自定义枚举验证规则。随着Golang的流行,越来越多的开发者开始使用它来构建高效、可靠的应用程序。而验证器是其中一个重要的工具,它可以帮助我们验证输入的数据是否符合规定的格式和要求。自定义枚举验证规则是验证器的一个重要功能,它可以帮助我们定义自己的枚举类型,并对输入的数据进行验证。通过本文,我们将详细介绍如何在Golang中使用自定义枚举验证规则,以及一些实际应用场景。让我们一起来探索这个强大的功能吧!

问题内容

我正在使用 https://GitHub.com/go-playground/validator,我需要为不同的枚举值创建自定义验证规则。这是我的结构 - Https://go.dev/play/p/UmR6YH6cvK9。如您所见,我有 3 种不同的用户类型:管理员、版主和内容创建者,我想为他们调整不同的密码规则。例如,管理员的密码长度应至少为 7 个符号,而版主的密码长度应至少为 5 个。是否可以通过 go-playground/validator 中的标签来做到这一点?

我的服务获取用户列表,需要使用不同的规则进行验证

解决方法

您可以向 usertype 添加一个方法,该方法使用 validator 包来验证用户。

type usertype int

const (
    admin usertype = iota
    moderator
    contentcreator
)

func (u usertype) validate() error {
    switch u {
    case admin:
        // validate admin
    case moderator:
        // validate moderator
    case contentcreator:
        // validate content creator
    default:
        return fmt.errorf("invalid user type")
    }
    return nil
}

调用 validate 看起来像这样

func main() {
    a := User{
        Type:         Admin,
        Name:         "admin",
        PassWord:     "pass",
        LastActivity: time.Time{},
    }

    err := a.Type.Validate()
    if err != nil {
        fmt.Println("invalid user: %w", err)
    }
}

以上就是Golang 验证器自定义枚举验证规则的详细内容,更多请关注编程网其它相关文章!

您可能感兴趣的文档:

--结束END--

本文标题: Golang 验证器自定义枚举验证规则

本文链接: https://www.lsjlt.com/news/562301.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Golang 验证器自定义枚举验证规则
    php小编小新今天给大家介绍一款强大的Golang验证器——自定义枚举验证规则。随着Golang的流行,越来越多的开发者开始使用它来构建高效、可靠的应用程序。而验证器是其中一个重要的工...
    99+
    2024-02-09
  • vue表单验证自定义验证规则详解
    本文实例为大家分享了vue表单验证自定义验证规则,供大家参考,具体内容如下 这是公司里Vue+Element UI的项目。写的验证规则放图: 样式代码: <div class...
    99+
    2024-04-02
  • 自定义 Laravel 表单验证规则 – 通过 API 来验证
    我们所有的人都知道 Laravel 提供了一个非常方便的方式来验证表单,使用表格验证。但是你有没有发现自己需要使用第三方的 API 来验证一个表单字段?我最近在一个项目中就遇到了这个需求。我为一个第三方服务保存了一个 API 密钥,并被要求...
    99+
    2023-08-07
    api 验证表单 Laravel
  • vueelementUI实现自定义正则规则验证
    目录项目场景:验证是否是合法手机号(举例)实现步骤:总结:项目场景: 常见的表单填写中都会遇到,比如新增信息,修改信息等,如下图 相信大家对上面的验证都非常熟悉了,不多哔哔 本篇文...
    99+
    2024-04-02
  • vue elementUI如何实现自定义正则规则验证
    这篇文章给大家分享的是有关vue elementUI如何实现自定义正则规则验证的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。项目场景:常见的表单填写中都会遇到,比如新增信息,修改信息等,如下图相信大家对...
    99+
    2023-06-29
  • 关于element中对el-input自定义验证规则
    目录element对el-input 自定义验证规则自定义校验传入自定义参数element-ui自定义表单验证,但是不出现小红心了element对el-input 自定义验证规则 首...
    99+
    2022-11-13
    element中el-input 自定义验证规则 el-input自定义验证
  • vue使用elementui自定义手机验证规则问题
    目录使用element ui自定义手机验证规则element-ui form组件自定义校验总结使用element ui自定义手机验证规则 1.表单的一项   <el-form-...
    99+
    2022-12-29
    vue element ui 自定义手机验证规则 vue手机验证
  • uniapp表单uni-forms校验自定义校验规则,手机校验、身份证校验
    validateFunction 自定义校验规则 如果需要使用 validateFunction 自定义校验规则,则不能采用 uni-forms 的 rules 属性来配置校验规则,这时候需要通过re...
    99+
    2023-09-04
    javascript 小程序
  • hyperf 自定义验证器的使用
    引入组件包 composer require hyperf/validation 添加中间键 您需要为使用到验证器组件的 Server 在 config/autoload/middlewares.php 配置文件加上一个全局中间件 Hype...
    99+
    2023-09-04
    php java 数据库
  • access验证规则如何写
    在编写 access 验证规则时,通常需要考虑以下几个方面: 资源权限:确定用户对于特定资源的访问权限,包括读取、写入、更新和删...
    99+
    2024-03-15
    access
  • Java如何实现自定义枚举值校验器
    本篇内容主要讲解“Java如何实现自定义枚举值校验器”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java如何实现自定义枚举值校验器”吧!前言定义一个枚举类,现需要对传入的枚举值进行范围校验。@...
    99+
    2023-07-05
  • layui中lay-verify form表单自定义验证规则的示例分析
    这篇文章主要介绍layui中lay-verify form表单自定义验证规则的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!虽然layui的官方文档已经是写的比较详细,但是初...
    99+
    2024-04-02
  • Gin 框架中的自定义验证
    “纵有疾风来,人生不言弃”,这句话送给正在学习Golang的朋友们,也希望在阅读本文《Gin 框架中的自定义验证》后,能够真的帮助到大家。我也会在后续的文章中,陆续更新Golang相关的技术文章,有...
    99+
    2024-04-05
  • access怎么设置验证规则
    要设置Access的验证规则,可以按照以下步骤操作:1. 打开Access数据库,并选择要设置验证规则的表格或字段。2. 在“设计”...
    99+
    2023-09-20
    access
  • Laravel如何自定义验证对象
    这篇文章主要介绍“Laravel如何自定义验证对象”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Laravel如何自定义验证对象”文章能帮助大家解决问题。Laravel 5.5 将提供一个全新的自定...
    99+
    2023-07-04
  • Go Gin:创建通用自定义验证器
    php小编鱼仔为大家带来一款实用的开发工具——Go Gin框架中的通用自定义验证器。作为一款高性能的Web框架,Go Gin提供了强大的验证器功能,帮助开发者在处理用户输入时保证数据的...
    99+
    2024-02-10
  • Python中如何自定义密码验证
    这篇文章主要介绍“Python中如何自定义密码验证”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python中如何自定义密码验证”文章能帮助大家解决问题。下面是重构后的代码:from st...
    99+
    2023-06-29
  • vue中element如何自定义表单验证请求后端接口验证
    小编给大家分享一下vue中element如何自定义表单验证请求后端接口验证,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!做vue...
    99+
    2024-04-02
  • jQuery中Validate相关参数及常用自定义验证规则的示例分析
    这篇文章将为大家详细讲解有关jQuery中Validate相关参数及常用自定义验证规则的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Jquery Validat...
    99+
    2024-04-02
  • Java实现自定义枚举值校验器的示例代码
    目录前言注解校验使用前言 定义一个枚举类,现需要对传入的枚举值进行范围校验。 @Getter public enum UserTypeEnum { STUDENT(“1”, ...
    99+
    2023-02-22
    Java自定义枚举值校验器 Java枚举值校验器 Java枚举值校验 Java枚举值
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作