Ext.data.Model 的数据校验 Ext.data.validations

/**

Model 的数据校验
Ext.data.validations 本身的校验方法有 6 种(版本: 4.2.1)

email        - 电子信箱    - 验证一个电子邮件字符串是正确的格式
exclusion    - 排除        - 验证给定的值不存在于配置的 List 列表中。
format        - 格式        - 给定值通过正则表达式匹配,则返回true。
inclusion    - 包含        - 验证给定的值存在于配置的 List 列表中。
length        - 长度        - 如果给定的值是配置的最小值和最大值之间。
presence    - 存在        - 验证给定的值存在。

 */
// 定义一个 Pet 模型
Ext.define('Pet',{
    extend: 'Ext.data.Model',
    fields: [
        // User 的字段
        {name: 'id', type: 'int'},
        {name: 'email', type: 'string'},
        {name: 'name', type: 'string'},
        {name: 'nickname', type: 'string'},
        {name: 'gender', type: 'string'},
        {name: 'desc', type: 'string'}
    ],
    // 配置验证
    validations: [
        {type: 'email', field: 'email', message: '您输入的电子信箱格式格式错误!'},
        {type: 'exclusion', field: 'name', list:['pamisisi', 'alex']},
        {type: 'format', field: 'nickname', matcher: /^([\u4e00-\u9fa5]){2,4}$/, message: '您输入昵称必须为2-4个汉字!'},
        {type: 'inclusion', field: 'gender', list:['','']},
        {type: 'length', field: 'desc', min: 7, max: 20, message: '7-20个字符!'},
        {type: 'presence', field: 'id'}
    ]
});

Ext.onReady(function() {
    //创建 Pet 模型实例
    var pet  = Ext.create('Pet',{
        id: 1,
        email: 'pet.niuniu#live.com',
        name: 'niuniu',
        nickname: 'nif',
        gender: '',
        desc: '我家的狗狗!'
    });
    
    var errors = pet.validate();
    
    console.log("验证是否有效: " + errors.isValid());
    console.log("共有 " + errors.length + " 处错误!");
    
    errors.each(function(v){
        console.error(v.field + ': ' + v.message);
    });
});

 

转载于:https://www.cnblogs.com/alexck/p/3457806.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值