如何在2个字段上拥有唯一的验证规则?
一个.该应用程序不应该允许两个人具有相同的名字和姓氏.
允许用户仅填写名字或仅填写姓氏.因为用户可能只有其中一个.
湾 但是,如果用户只输入名字(格伦),则表格中的其他人不应该具有相同的名字(名字='格伦',姓氏=空).另一个'格伦史密斯'好吧.
我尝试了以下规则.当两个字段(名字和姓氏)都不为空时,它很有用:
'firstName' => 'unique:people,firstName,NULL,id,lastName,' . $request->lastName
Run Code Online (Sandbox Code Playgroud)
此规则在b上失败.当只有一个字段时.
任何提示?
嗨,我正在Laravel中进行一些验证,我想确保字段uid对于project_id是唯一的.例如我的数据库表如下:
id | project_id | uid |
1 | 3 | task_uid |
2 | 4 | task_uid2 |
3 | 4 | task_uid |
Run Code Online (Sandbox Code Playgroud)
uid可以在project_id中存在两次,但如果project_id相同则不能.
我试过以下几点;
public static $rules = array(
'UID' => 'required|unique:uid,project_id'
);
Run Code Online (Sandbox Code Playgroud)
但是这没有用,并返回以下sql错误;
"SQLSTATE[42S02]: Base table or view not found: 1146 Table 'project.uid' doesn't exist (SQL: select count(*) as aggregate from `uid` where `project_id` = task_uid)"
Run Code Online (Sandbox Code Playgroud)
我有什么想法可以检查任务表,以确保project_id和uid是唯一值?