我有一个模型Market
,可以有一个所有者和许多客户。当客户注册时,我想根据email
和customer_market_id
来验证他们是否唯一。我希望客户能够使用与市场所有者相同的电子邮件进行注册。区别在于,市场所有者拥有null
的{{1}}。当我尝试使用当前的验证方法执行此操作时,该操作将失败。
customer_market_id
]
我已经在email => ['unique:users,email,customer_market_id'
包中尝试过这种方法:
uniquewith-validation
如果有人有任何建议,那就太好了!谢谢!
答案 0 :(得分:0)
'email' => 'unique:table_name,email_address_column'
unique有两个参数。第一个参数是数据库中的table_name,第二个参数是表中的column_name。
答案 1 :(得分:0)
尝试进行以下验证:
'email' => 'unique:users,email | unique:users,customer_market_id'
答案 2 :(得分:0)
$this->validate($request,[
'name' => 'required|string|max:255|unique:users',
'email' => 'required|string|email|max:255|unique:users',
]);
答案 3 :(得分:-1)
对于不同的用户角色注册,您可以使用 laravel Guard 。为所有者和客户之类的每种角色类型创建警卫,并可以轻松地使用相同的ID进行注册。 Laravel Guard 参见文档