null, 'field' => 'confirm', //'table' => null, 'validator' => 'default', ]; /** * @param \Cake\ORM\Table $table * @param array $config */ public function __construct(Table $table, array $config = []) { parent::__construct($table, $config); if (!$this->_config['message']) { $this->_config['message'] = __d('tools', 'Please confirm the checkbox'); } } /** * @param \Cake\Event\Event $event * @param \Cake\Validation\Validator $validator * @param string $name */ public function buildValidator(Event $event, Validator $validator, $name) { $this->build($validator, $name); } /** * @param \Cake\Validation\Validator $validator * @param string $name */ public function build(Validator $validator, $name = 'default') { if ($name !== $this->_config['validator']) { return; } $field = $this->_config['field']; $message = $this->_config['message']; $validator->add($field, 'notBlank', [ 'rule' => function ($value, $context) { return !empty($value); }, 'message' => $message, //'provider' => 'table', 'requirePresence' => true, 'allowEmpty' => false, 'last' => true] ); $validator->requirePresence($field); //$validator->allowEmpty($field, false); } }