Parsing (dalam proses marshalling) dan validasi tidak ada hubungannya satu sama lain, yang pertama akan terjadi setelah yang terakhir.
Periksa date
validasi metode API, dibutuhkan argumen lebih lanjut, yaitu format yang digunakan, dan ekspresi reguler khusus untuk digunakan, bukan yang telah ditentukan sebelumnya.
API> \Cake\Validation\Validation::tanggal()
Jadi, untuk memvalidasi data bahasa Jerman yang dilokalkan dengan benar, Anda harus menentukan dmy
format.
->add('datefield', 'valid', ['rule' => ['date', 'dmy']])
Jika Anda ingin menerapkan validasi yang dilokalkan secara global, dengan cara di mana format dapat diubah dari satu titik di aplikasi Anda, maka Anda dapat misalnya menggunakan aturan validasi khusus dan penyedia khusus yang tersedia secara global, yang mengambil format dari aplikasi Anda konfigurasi, seperti
namespace App\Validation;
use Cake\Core\Configure;
use Cake\Validation\Validation;
class AppValidation
{
public static function date($check) {
return Validation::date($check, Configure::read('Locale.validation.dateFormat'));
}
}
$validator->provider('appValidation', 'App\Validation\AppValidation');
$validator->add('datefield', 'valid', [
'rule' => 'date',
'provider' => 'appValidation'
])
Lihat juga Buku Masak> Validasi> Aturan Validasi Kustom