Grails:验证包含分隔的电子邮件地址列表的字符串

Posted

技术标签:

【中文标题】Grails:验证包含分隔的电子邮件地址列表的字符串【英文标题】:Grails: Validation of string containing a delimited list of email addresses 【发布时间】:2011-01-22 10:29:42 【问题描述】:

我有一个包含 emailAddresses 字段的 Grails 命令对象,

例如

public class MyCommand 

    // Other fields skipped
    String emailAddresses

    static constraints = 
        // Skipped constraints
    



用户需要在表单中输入以分号分隔的电子邮件地址列表。使用 Grails 的验证框架,验证字符串是否包含格式良好的分隔电子邮件地址列表的最简单方法是什么?有什么方法可以重用现有的电子邮件地址验证约束?

谢谢

【问题讨论】:

【参考方案1】:

您可以使用电子邮件约束使用的内容:

import org.apache.commons.validator.EmailValidator
...

static constraints = 
    emailAddresses validator:  value, obj, errors ->
        def emailValidator = EmailValidator.getInstance()
        for (email in value.split(';')) 
            if (!emailValidator.isValid(email)) 
                // call errors.rejectValue(), or return false, or return an error code 
            
        
    

【讨论】:

以上是关于Grails:验证包含分隔的电子邮件地址列表的字符串的主要内容,如果未能解决你的问题,请参考以下文章

Grails中的电子邮件验证

Parsley 验证逗号分隔的电子邮件地址

在 MS Access 中以分号分隔的列表检索电子邮件地址的子查询

如何验证我使用 bootstrap 3 创建的表单?

Grails 中的电子邮件验证

外来字符的电子邮件验证