【发布时间】:2017-04-22 11:14:21
【问题描述】:
我不明白为什么,但是 Drupal 8 核心注册表单允许使用已被占用的电子邮件地址创建一个新帐户!
如何防止这种情况发生?
【问题讨论】:
标签: drupal-8
我不明白为什么,但是 Drupal 8 核心注册表单允许使用已被占用的电子邮件地址创建一个新帐户!
如何防止这种情况发生?
【问题讨论】:
标签: drupal-8
我已经在我的 Drupal 8 安装中检查过这个问题,但我找不到这个问题。
但如果您遇到此问题,请在用户注册表单中通过 hook_form_alter 创建自定义表单验证。
function YOURMODULENAME_form_alter(&$form, \Drupal\Core\Form\FormStateInterface $form_state, $form_id){
if($form_id == 'user_register_form'){
$form['#validate'][] = 'my_custom_validate';
}
}
$form['#validate'][] = 'my_custom_validate';
并通过user_load_by_mail函数检查该用户邮箱是否存在于数据库中
如果用户存在,则设置表单错误“电子邮件地址已被占用。”
希望对你有用。
【讨论】: