我在表服务器中有2列。
我有专栏ip和hostname。
ip
hostname
我有验证:
'data.ip' => ['required', 'unique:servers,ip,'.$this->id]
这仅适用于列ip。但是如何做到这一点并适用于专栏hostname呢?
我想列验证data.ip ip和hostname。因为在用户写入ip时,ip和主机名列中可以重复。
您可以Rule::unique用来实现验证规则
Rule::unique
$messages = [ 'data.ip.unique' = 'Given ip and hostname are not unique', ]; Validator::make($data, [ 'data.ip' => [ 'required', Rule::unique('servers')->where(function ($query) use($ip,$hostname) { return $query->where('ip', $ip) ->where('hostname', $hostname); }), ], ], $messages );