Phalcon框架之———— 2.0升级到3.0 问题Model验证问题解决

简介: Github源码:https://github.com/phalcon/cphalcon/tree/master/phalcon/validation/validatorPhalcon 2.0 Model 字段验证:public function validation() { ...

Github源码:https://github.com/phalcon/cphalcon/tree/master/phalcon/validation/validator

Phalcon 2.0 Model 字段验证:

public function validation()
    {
        $this->validate(new PresenceOf(array(
            "field" => 'code',
            "message" => '应用名称不能为空',
        )));
        $this->validate(new Regex(array(
            "field" => 'code',
            "message" => '应用名称只能包含字母、数字、 中、下划线',
            'pattern' => '/^[-A-Za-z0-9_]+$/',
        )));
        $this->validate(new Model\Validator\Uniqueness(array(
            'field' => 'code',
            'message' => '应用名称已被使用'
        )));
        $this->validate(new PresenceOf(array(
            "field" => 'name',
            "message" => '名称不能为空',
        )));
        $this->validate(new PresenceOf(array(
            "field" => 'mechanismId',
            "message" => '请选择归属推理系统',
        )));

        return $this->validationHasFailed() != true;
    }

Phalcon 3.0 Model 字段验证:

use Phalcon\Validation\Validator\PresenceOf;
use Phalcon\Validation\Validator\Regex as RegexValidator;
use Phalcon\Validation\Validator\Uniqueness;

public function validation() { $validator = new Validation(); //验证值不为null或空字符串 $validator->add( [ 'mobile', 'password' ], new PresenceOf([ "message" => [ 'mobile' => '手机号不能为空', 'password' => '密码不能为空', ], ]) ); //允许验证字段的值是否与正则表达式匹配 $validator->add( [ 'mobile', 'password' ], new RegexValidator([ 'pattern' => [ 'mobile' => "/^(13[0-9]|14[0-9]|17[0-9]|15[0-9]|18[0-9])\d{8}$/", 'password' => "/^[A-Za-z0-9_]+$/", ], 'message' => [ 'mobile' => '手机号只能包含英文、数字和下划线', 'password' => '密码只能包含英文、数字和下划线' ] ]) ); //检查相关表中的字段是否唯一 $validator->add( 'mobile', new Uniqueness([ 'model' => 'User', 'message' => ':field must be unique' ]) ); return $this->validate($validator); }

 

目录
相关文章
|
前端开发 .NET 数据安全/隐私保护
菜鸟入门【ASP.NET Core】15:MVC开发:ReturnUrl实现、Model后端验证 、Model前端验证
ReturnUrl实现 我们要实现returnUrl,我们需要在注册(Register)方法中接收传进的returnUrl并给它默认值null,然后将它保存在ViewData里面 然后我们定义一个内部方法来判断跳转returnUrl //内部跳转 private IActionR...
2587 0
|
7月前
|
运维 监控 Serverless
Serverless 应用引擎产品使用之阿里函数计算中在自定义环境下用debian10运行django,用官方层的python3.9,配置好环境变量后发现自定义层的django找不到了如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
前端开发 API 数据库
fastadmin框架调用model层的方法
fastadmin框架调用model层的方法
294 0
|
前端开发
DRF--验证器
DRF--验证器
|
测试技术 PHP
在Yii2框架下使用自带codeception进行单元测试提示model类不存在解决方法
在Yii2框架下使用自带codeception进行单元测试提示model类不存在解决方法
317 0
在Yii2框架下使用自带codeception进行单元测试提示model类不存在解决方法
|
前端开发 数据库连接 PHP
symfony框架MVC模式中的Model使用方法
symfony框架MVC模式中的Model使用方法
135 0
symfony框架MVC模式中的Model使用方法
【Django | 开发】分离上线环境与开发环境(多settings配置)
【Django | 开发】分离上线环境与开发环境(多settings配置)
【Django | 开发】分离上线环境与开发环境(多settings配置)
|
API 算法框架/工具 Python
TensorFlow固化模型+打包程序+web API
固化Tensorflow模型,使用flask搭建简易web API,打包python代码
6546 0
|
前端开发 数据库 JavaScript
ODOO中的Action原理?
ODOO 中的 Action原理?
1489 0