在使用 Laravel 表单验证的 required_if 验证规则时,自定义错误信息如下:

public function rules(): array
{
    return [
        'sid' => [Rule::requiredIf($this->user()->is_our_student)],
    ];
}
public function messages(): array
{
    return [
        'sid.required_if' => '在校生请输入学号',
    ];
}

结果并没有正确的显示错误信息,而是要使用 required 来定义错误信息:

public function messages(): array
{
    return [
        'sid.required' => '在校生请输入学号',
    ];
}

这样就可以正确显示 required_if 的自定义错误信息了。