Cập nhật rules cho validation cho Articles
Lượt xem: 2886
Cập nhật rules cho validation cho Articles
Cho đến thời điểm này, các bài viết của chúng ta không có xác nhận (validation) đầu vào được thực hiện. Hãy khắc phục điều đó bằng cách sử dụng trình xác nhận:
// src/Model/Table/ArticlesTable.php
// thêm câu lệnh sử dụng này ngay bên dưới khai báo namespace để nhập
// Lớp Validator
use Cake\Validation\Validator;
// thêm hàm bên dưới
public function validationDefault(Validator $validator)
{
$validator
->allowEmptyString('title', false)
->minLength('title', 10)
->maxLength('title', 255)
->allowEmptyString('body', false)
->minLength('body', 10);
return $validator;
}
Phương thức validationDefault() cho CakePHP biết cách xác thực dữ liệu của ban khi phương thứ save() được gọi. Ở đây, chúng ta đã xác định rằng cả title và trường body không được để trống và có các ràng buộc về độ dài nhất định.
Công cụ Validation của CakePHP mạnh mẽ và linh hoạt. Nó cung cấp một bộ quy tắc được sử dụng thường xuyên cho các tác vụ như địa chỉ email, địa chỉ IP... và tính linh hoạt để thêm các quy tắc xác thực riêng của bạn tự định nghĩa. Để biết thêm thông tin về cách thiết lập đó hãy xem thêm tài liệu Validation của CakePHP.
Bây giờ các quy tắc xác thực của bạn được áp dụng, hãy sử dụng ứng dụng để thử thêm một bài viết có title hoặc body trống để xem các thức hoạt động của nó. Vì chúng ta sử dụng phương thức Cake\View\Helper\FormHelper::control() của FormHelper để tạo các phần tử cho form, các thông báo lỗi xác thực sẽ được hiển thị tự động.
Video thực hành cùng dandev
Nguồn https://book.cakephp.org/3.0/en/quickstart.html