我试图添加验证,在我的用户模型中验证电子邮件使用regex。
然而,它在第一个撇号处吐出一个假人。
'email' => 'required|regex:/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/',发布于 2015-01-28 06:55:00
作为对this question on SO的回答,没有简单的正则表达式来验证电子邮件地址。使用您的RegEx可能会捕获有效的地址(尽管这只是我的猜测)。使用email验证规则将是我的第一选择。
但是您是对的,这首先是服务器端,如果您忽略了使用输入和错误消息重定向用户。
在客户端,你有一些选择。第一种方法是简单地依赖于浏览器验证中的构建,将相应的输入字段声明为电子邮件地址,您无论如何都应该这样做:
{{ Form::email($name, $value = null, $attributes = array()) }}另一种更高级的方法是创建某种帮助程序,使用相同的验证规则通过Ajax检查输入类型,并返回错误消息或某些内容。相似的。例如,这可能是您的模型-资源的另一条路径。这样,你就能保持稳定和稳定。
发布于 2015-01-27 21:32:59
你试过“电子邮件”验证规则了吗?
'email' => 'required|email|unique:users,email'http://laravel.com/docs/4.2/validation#rule-email
https://stackoverflow.com/questions/28179259
复制相似问题