php if require,关于php:required_if Laravel 5验证
我有一個表格,用戶可以填寫出售房屋的信息。 對于其中一項投入,用戶必須選擇"待售"或"待租"天氣。 如果是For Sale,則會出現(xiàn)兩個價格輸入字段,如果是For Rent,則會基于jQuery顯示一些其他價格輸入字段。
我的問題是我想要價格字段,例如,但是如果我選擇"用于出租",然后提交表單,它將給我一個錯誤,提示"用于銷售"輸入字段的價格字段 是必需的,即使它位于"用于出租"部分下。
我知道Laravel中有一個required_if,但是我只是不知道如何利用它。 這是我的財產(chǎn)要求。
namespace App\Http
equests;
use App\Http
equests
equest;
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', //
'rent_price' => 'required',
];
}
}
/ ******************編輯******************************* /
我現(xiàn)在所擁有的:
public function rules()
{
return [
'list_type' ?=> 'required',
'sale_price' => 'required_if:list_type:For Sale',
'rent_price' => 'required_if:list_type:For Rent',
}
但是當我提交表單時,我得到了這個錯誤:
測試的好地方是測試(v5.6):github.com/laravel/framework/blob/
假設list_type是選擇框的名稱(值:出售或出租)
用這種方式
"sale_price" =>"required_if:list_type,==,selling"
這是什么意思?
:
僅當list_type的值等于selling時才需要銷售價格
對rent_price做同樣的事情
編輯
public function rules()
{
return [
'list_type' ?=> 'required',
'sale_price' => 'required_if:list_type,==,For Sale',
'rent_price' => 'required_if:list_type,==,For Rent'
}
檢查我的編輯,犯了一個錯誤,請立即嘗試,如果這不起作用,請?zhí)砑?#61; =,例如sale_price" =>"required_if:list_type,==,selling"
您的評論的編輯部分有效。 謝謝。
上面的代碼無關緊要,因為使用list_type => required時,沒有必要編寫下兩個驗證規(guī)則,因為始終需要它們,因為list_type也是required而不是sometimes 。
@lura Varzari我真的不明白你的意思,接下來的2條驗證規(guī)則取決于第一個list_type的值:)如果list_type =="for sale"必須存在sale_price字段,否則其租金必須存在領域
您節(jié)省了我的時間@AchrafKhouadja,謝謝!
謝謝你的分享!
可能存在另一種情況,如果不存在其他字段,則將需要該要求,如果有人處于這種情況,則可以
'your_field.*' => 'required_unless:dependency_field.*,
總結(jié)
以上是生活随笔為你收集整理的php if require,关于php:required_if Laravel 5验证的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 附属卡
- 下一篇: 动态规划算法php,php算法学习之动态