ActiveRecord 模型验证
模型 验证 ActiveRecord
2023-06-13 09:12:23 时间
Model 类的rules()方法返回的每个规则必须是以下格式。
public function rules()
{
return [
[['attributesl', 'attributes2'],//属性列表数组
'validator', //预定义验证器类的别名
'on' => ' actionID',////应用场景列表(可选)
'message' => 'string',//附加选项,如自定义的错误提是示信息
]
];
}
“validator” 预定义验证表
验证器类 | 别名 | 功能描述 |
---|---|---|
BooleanValidator | boolean | 功能描述确保验证项值是true 或false |
CaptchaValidator | captcha | 验证码验证 |
CompareValidator | compare | 确定值验证 |
EmailValidator | 有效的Email地址格式验证 | |
DefaultValueValidator | default | 设定默认值 |
ExistValidator | exist | 确保验证项可以在指定数据库表的列中找到 |
FileValidator | file | 确保验证项含有一个上传文件的名字 |
FilterValidator | filter | 通过一个过滤器改变此验证项 |
CRangeValidator | in | 确保验证项的值在预先指定的范围之内 |
StringValidator | length | 确保验证项的长度在指定的范围之内 |
RegularExpression Validator | match | 正则表达式匹配验证 |
NumberValidator | number | 有效的数字格式验证 |
RequiredValidator | required | 确保验证项不为空 |
Unique Validator | unique | 确保验证项在数据库表列中是唯一的 |
UrlValidator | url | 有效的URL格式验证 |
SafeValidator | safe | 认为该验证项是安全的,以便于块赋值 |
比如:file 验证图片 图片可以为空、类型只能是jpg、png或者gif,最大10M等
public function rules()
{
return [
[
'imgurl',
'file',
'allowEmpty' => true,
'types' => 'jpg,gif,png',
'maxSize' => 1024 * 1024 * 10,
'toLarge' => '上传图片已超过10M',
],
['title','string', 'length' => [1, 10]],
];
}
说明:除了使用Yii2框架提供的预定义验证器之外,安正规则中指定的“validator”还可以是模型类中的一个方法名,或者是一个自定义验证器的类型,这里就不再详细赘述。
相关文章
- 高效能人士的七个习惯 - 成熟模型图
- 170亿参数,28项公开测试集SOTA,行业最大的视觉多任务统一大模型来了
- 论文修改100遍也别慌!Meta发布全新写作语言模型PEER:参考文献都会加
- 零障碍合并两个模型,大型ResNet模型线性连接只需几秒,神经网络启发性新研究
- 使用自己的数据集训练GoogLenet InceptionNet V1 V2 V3模型(TensorFlow)「建议收藏」
- 广义线性模型(GLM)及其应用
- Paddlenlp之UIE模型实战实体抽取任务【打车数据、快递单】
- 中科院 AI 团队最新研究发现,大模型可通过自我验证提高推理性能
- 再次战胜人类:Meta AI推出首款可以“忽悠”人的AI模型
- AAAI 2023 | 基于T5的两阶段的多任务Text-to-SQL预训练模型MIGA
- 赚钱的8种底层模型