我有一个Laravel 5.3应用程序,还有一个更新表单,我在其中发送用户个人资料值。其中之一就是用户图像,我正在为其创建一个隐藏的输入字段,因此,如果用户不上传任何新图像,我仍然可以看到他具有带有旧图像值的隐藏字段。

<input type="hidden" class="form-control" name="old_image" value="{{ $player->image_filename }}" id="oldImage">

如果他删除图像,则隐藏的输入值将为空。
document.getElementById('oldImage').value = '';

这就是我想到的更新用户图像的方式。但是我不知道如何为该表格设置验证规则。类似于以下内容:
    public function rules()
    {
        return [
          'first_name' => 'required|max:50',
          'last_name' => 'required|max:50',
          'birthday' => 'required',
          'image' => required if old_image empty
        ];
    }

我尝试了'image' => 'required_without:old_image','image' => 'required_if:old_image, null',,但它们均未显示任何错误消息以显示缺少的图像。我显示这样的错误消息:

最佳答案

您可以使用两个规则

'image' => 'required_if:old_image'

或者:
'image' => 'required_without:old_image'

关于php - Laravel验证规则,如果字段为空则需要另一个字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41805597/

10-14 12:34
查看更多