# common **Repository Path**: doxlab/common ## Basic Information - **Project Name**: common - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-12-09 - **Last Updated**: 2024-06-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # common 包说明 # common包是所有其他包都可能会调用到的一些公共结构和函数。 common包不会包含atomtree内的其他包,避免出现循环依赖,这在GO语言中是不允许的。 # 主要功能函数 # # struct的校验器 # 通过tag对struct的字段进行注解,定义struct字段的标题以及值的校验方式。 ## 标签定义 ## * title: 字段显示的标题 * required: 定义字段是否是必填项 * valid: 定义校验器 * descript: 对字段进行说明和注释 ## 结构定义的例子 ## type AStruct struct { Name string `required:"+" range:"3,20" title:"姓名"` Email string `required:"+" valid:"email" title:"电子邮箱"` Url string `required:"+" valid:"url" title:"URL"` Ip string `required:"+" valid:"ip" title:"IP"` Phone string `required:"+" valid:"phone" title:"Phone"` Mobile string `required:"+" valid:"mobile" title:"Mobile"` LoginId string `required:"+" valid:"loginid" title:"登录账号"` Description string `required:"-"` Noinfo string Rqonly string `required:"+"` } ## required ## 字段是否必填,如果是必填,则为+,如果不是必填,则为- ## valid ## 目前支持下面一些预定义的内容验证: * email 电子邮件 * url 网址 * ip ip地址 * phone 座机号码 * mobile 手机号码 * loginid 登录账号 * password 密码 * idcard 身份证号码 * eng 只能是英文字母 * currency 数值,包括价格,可以用小数 ## range ## * range 例如: 3,256 ,即最短3个字符,最长256个字符 ## 自定义新的校验器 ##