【问题标题】:How to add validation rule with where condition in laravel 8?如何在 laravel 8 中添加带有 where 条件的验证规则?
【发布时间】:2022-01-24 05:18:33
【问题描述】:
    $validatedData = $this->validate($request, [
        'ldate' => 'required',
        'type' => 'required',
        'daytype' => 'required',
        'employee' => 'required', 'exists:leaves,bemployee'  //where condition i need here
        'bemployee' => 'required',
        'subject' => 'required',
        'content' => 'required',
    ]);

这是我的验证。表名是Leaves。 employee、bemployee 和 ldate 是表中的字段。

我如何在 ldate= $ldate 中检查 employee 作为 bemployee 存在?

提前致谢

【问题讨论】:

  • exists:bemployee,bemployee =>> bemployee 是表还是列或两者兼而有之?
  • 我已编辑。叶子是表,员工是字段名

标签: laravel-8


【解决方案1】:
$valid= Validator::make($request, [
        'contact'=> ['required',Rule::exists('tableName')->where(function ($query) use ($request) {
                        $query->where('column',$request->yourField);}),
                    ],
    ],
);
if($valid->fails()){
    // code
}else{
    // code
}

【讨论】:

  • 我的代码没有变化。我需要那里的条件
  • 为此,您需要像上面一样创建自定义验证
  • 别忘了添加 use Illuminate\Support\Facades\Validator;
猜你喜欢
  • 2018-03-15
  • 2020-12-29
  • 2018-05-09
  • 2021-02-27
  • 1970-01-01
  • 2014-11-25
  • 1970-01-01
  • 2015-04-30
  • 2018-12-23
相关资源
最近更新 更多