如何在 Magento2 的管理表单上实现电子邮件验证

How to implement email validation on admin form in Magento2

我想在自定义模块的管理表单中使用电子邮件验证。我看过核心模块,但无法准确理解。

我自己找到了答案,我在保存控制器中使用了 PHP 电子邮件验证。

验证是模型的问题。只有模型知道您的数据应该是什么样子。您在模型中描述了您的数据字段,因此您应该在同一位置描述此字段的验证规则。

这对我来说似乎是显而易见的,但我很乐意听取反对者的意见。 将数据库验证放在模型中(假设它是一个数据库模型)并将 http 数据验证放在控制器中。例如,Xss 过滤与模型无关。它属于输入中的控制器和输出中的视图

You can also validate the 'email' text field by adding a class ['validate-email'] in your form

$fieldset->addField(
    'email',
    'text',
    [
        'name' => 'email', 
        'label' => __('Email'), 
        'title' => __('Email'), 
        'required' => true, 
        'class' => 'validate-email'
    ]
);