我正在与laravel一起使用Vue。 依我看,我有客户登记表。表单中包含客户的数据(名称,地址)和照片。
我将所有内容打包在formData对象中,以将图像和数据发送到服务器。
我的观点:
let formData = new FormData();
formData.append("image", this.data.logo);
formData.append("data", JSON.stringify(this.data));
axios.post(`urlServer`, formData).then(response => {
...
}).catch((error) =>{ });
在我的幼虫中
public function update(Request $request){
$array = $request->all();
$request->validate([ //not working
'name' => 'required'
]);
}
如何验证数据?数据在我的laravel中编码。在我的服务中,我使用json_decode($ array ['data'],true);
在我的控制器中,我想使用类似的东西:
$request->validate...
有人知道如何创建验证吗?
答案 0 :(得分:0)
该请求没有validate
函数。
验证请求的一种方法是:
<?php
...
use Validator;
class Controller extends BaseController
{
...
public function update(Request $request){
$array = $request->all();
$rules = array(
'name' => 'required|string',
'address' => 'required|strgin',
'photo' => 'image'
);
$validator = Validator::make($array, $ules);
if ($validator->fails()) {
return $this->setStatusCode(400)->respond([
'error' => [
'message' => $validator->messages(),
'status_code' => $this->getStatusCode()
]
]);
}
...
// store your data...
}
}
还要检查可用的validation rules