Laravel Livewire如何验证数组数据
Laravel Livewire how to validate array data
我尝试在提交表单时验证数组
<input type="text" class="form-control" wire:model.lazy="data.name" placeholder="name">
//at livewire component class
$data = [
'name' => 'someValue',
'phone' => 'someValue',
'email' => 'someValue'
]
我试试这个
Validator::make($this->data,[
'name' => 'required',
...
])->validate();
但是不工作,请帮助我。
您可以使用与 wire:model
:
中相同的语法进行验证
$this->validate([
'data.name' => ['required'],
]);
我是 Livewire 的新手,如果这与您的问题相关,我想知道。但是,由于您的问题在 Google 中排在首位。也许这会对其他人有所帮助。
public function saveAdd()
{
$rules_state = [
'state_name' => 'required',
'state_email' => 'required',
];
$check_state = $this->inputsFormAddProduct;
foreach ($this->inputsFormAddProduct as $key => $value) {
$rules_state = array_merge($rules_state, [
'state_product.'.$value => 'required',
'state_qty.'.$value => 'required',
]);
}
$validatedData = $this->validate($rules_state,
[
'required' => 'The :attribute cannot be empty.',
],
);
dd($rules_state);
}
我尝试在提交表单时验证数组
<input type="text" class="form-control" wire:model.lazy="data.name" placeholder="name">
//at livewire component class
$data = [
'name' => 'someValue',
'phone' => 'someValue',
'email' => 'someValue'
]
我试试这个
Validator::make($this->data,[
'name' => 'required',
...
])->validate();
但是不工作,请帮助我。
您可以使用与 wire:model
:
$this->validate([
'data.name' => ['required'],
]);
我是 Livewire 的新手,如果这与您的问题相关,我想知道。但是,由于您的问题在 Google 中排在首位。也许这会对其他人有所帮助。
public function saveAdd()
{
$rules_state = [
'state_name' => 'required',
'state_email' => 'required',
];
$check_state = $this->inputsFormAddProduct;
foreach ($this->inputsFormAddProduct as $key => $value) {
$rules_state = array_merge($rules_state, [
'state_product.'.$value => 'required',
'state_qty.'.$value => 'required',
]);
}
$validatedData = $this->validate($rules_state,
[
'required' => 'The :attribute cannot be empty.',
],
);
dd($rules_state);
}