我有一个表单,用户可以填写以出售他们的房屋。对于其中的一个输入,用户必须选择是“待售”还是“待租”。如果是待售,将出现两个价格输入字段;如果是待租,则会根据jQuery显示其他价格输入字段。
我的问题是,我希望这些价格字段为必填,但例如,如果我选择了“待租”,然后提交表单,它会给我一个错误,指出需要“待售”输入字段的价格字段,即使它在“待租”部分下。
我知道Laravel中有一个“required_if”,但我不知道如何使用它。这是我的财产请求。
<?php
namespace App\Http\Requests;
use App\Http\Requests\Request;
class PropertyRequest extends Request
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'list_type' => 'required',
'sale_price' => 'required', // <-- maybe like: required_if:value
'rent_price' => 'required',
];
}
}
/****************** 编辑 ***************************/
我现在拥有的:
public function rules()
{
return [
'list_type' => 'required',
'sale_price' => 'required_if:list_type:For Sale',
'rent_price' => 'required_if:list_type:For Rent',
}
但是当我提交表单时,会出现这个错误: