blade.phplaravel xác nhận với chức năng sử dụng
......
<tr>
<td>{{ Form::label('cameraMac', 'Mac: ') }}</td>
<td>{{ Form::text('cameraMac')}}</td>
</tr>
......
controller.php
$data = Input::all();
function transform($cameraMac) {
return strtoupper($cameraMac);
}
//validation here
$user = User::find($data['user_id']);
if($data["cameraMac"])
{
$user->camera_id = transform($data["cameraMac"]);
Cloud_camera::create(['id' => transform($data["cameraMac"]), 'user_id' => $user->id]);
}
$user->save();
tôi cần phải chuyển đổi cameraMac để khóa chính để lưu trữ trong db. Làm cách nào tôi có thể sử dụng hàm transform()
trong quy tắc xác thực 'nullable|unique:cloud_cameras,id|size:6'
. Đó là để nói, làm thế nào tôi có thể gọi chức năng này trong quá trình xác nhận.
là có cách gọi hàm này trong trình xác thực, không chuyển dữ liệu trước. –
@KrisRoofe có, bạn có thể tạo một ["yêu cầu biểu mẫu" tùy chỉnh] (https://laravel.com/docs/5.4/validation#form-request-validation) nơi bạn có thể đặt logic xác thực và ủy quyền của mình và cũng ghi đè phương thức 'validationData' và thực hiện' merge' ở đó. – alepeino