HogesTable.php
php:HogesTable.php
1<?php 2 3namespace App\Model\Table; 4 5use Cake\ORM\Table; 6use Cake\Validation\Validator; 7 8class HogesTable extends Table { 9 10 public function initialize(array $config = null) { 11 $this->table('hoges'); 12 $this->primaryKey('hoge_id'); 13 $this->entityClass('HogeRecord'); 14 $this->addBehavior('Timestamp'); 15 } 16 17 public function validationDefault(Validator $validator) { 18 parent::validationDefault($validator); 19 20 $validator = new Validator(); 21 22 $validator->notEmpty('user_id', 'user_idは空です。') 23 ->requirePresence('user_id', true, 'user_idは必須です。'); 24 25 debug('validationしたよ!'); 26 27 return $validator; 28 } 29 30} 31
HogesController.php
php:HogesController.php
1<?php 2 3namespace App\Controller; 4 5use Cake\ORM\TableRegistry; 6 7class HogesController extends AppController { 8 9 public function index() { 10 $hoge = TableRegistry::get('Hoges'); 11 $entity = $hoge->newEntity($this->request->data); 12 $hoge->save($entity); 13 14 debug($hoge->errors()); 15 exit; 16 } 17 18}
上記のコードでバリデーションが呼ばれません。なぜでしょうか?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。