<?php namespace App\Model\Table; use Cake\ORM\RulesChecker; use Cake\ORM\Table; use Cake\Validation\Validator; /** * SousCategories Model * * @property \Cake\ORM\Association\BelongsTo $Categories */ class SousCategoriesTable extends AppTable { /** * Initialize method * * @param array $config * The configuration for the Table. * @return void */ public function initialize(array $config) { parent::initialize($config); $this->setTable('sous_categories'); $this->setDisplayField('id'); $this->setPrimaryKey('id'); $this->belongsTo('Categories', [ 'foreignKey' => 'categorie_id', 'joinType' => 'INNER' ]); } /** * Default validation rules. * * @param \Cake\Validation\Validator $validator * Validator instance. * @return \Cake\Validation\Validator */ public function validationDefault(Validator $validator) { $validator->integer('id')->allowEmpty('id', 'create'); $validator->requirePresence('nom', 'create') ->notEmpty('nom') ->add('nom', 'valid', [ 'rule' => [ 'check_string' ], 'message' => 'Le champ doit ĂȘtre valide.', 'provider' => 'table' ]); return $validator; } /** * Returns a rules checker object that will be used for validating * application integrity. * * @param \Cake\ORM\RulesChecker $rules * The rules object to be modified. * @return \Cake\ORM\RulesChecker */ public function buildRules(RulesChecker $rules) { $rules->add($rules->existsIn([ 'categorie_id' ], 'Categories')); return $rules; } }