【发布时间】:2023-03-24 01:22:01
【问题描述】:
更新
我有一个包含这些列的表格:
- ID
- production_year
- type
如果type 已经存在于表中并且用户想要传递的值,请检查production_year 是否也已经存在,但只有当这些值存在于同一记录中时验证失败。否则让用户存储这条记录。
我正在尝试检查同一记录中几个字段的唯一性...
我已经看过有关条件验证的文档,但我并没有在那里找到答案。
代码
public function rules()
{
return [
// I'd like to check the uniqueness of both of them. In the same record
'production_y' => 'required|unique',
'fk_type' => 'required|unique',
];
}
有什么想法吗?谢谢!
【问题讨论】:
-
您想将“input-A”验证到 db 表中的一列,并将“input-B”验证到 db 表中的同一列?
-
什么不完全有效?如果您将唯一规则放在两者上,它应该可以工作..
-
我认为这将分别确定两者的唯一性,而他可能想要确定它们是否一起是唯一的。这就像在数据库中为每列创建 2 个唯一键 1 而不是为 2 列创建一个唯一键。
-
模型很容易,如果你有两个模型,那么你可以在验证中使用 unique:modelName
$this->validate($request, [ 'title' => 'unique:posts|unique:files', ]); -
是的,但我几乎可以肯定它也可以通过验证,检查 [laravel.io/forum/…
'production_year' => 'required|unique:table_name,production_year,NULL,id,type,'.$type类似这样的东西
标签: php validation laravel unique