--- /dev/null
+<?php
+namespace App\Model\Table;
+
+use Cake\ORM\Query;
+use Cake\ORM\RulesChecker;
+use Cake\ORM\Table;
+use Cake\Validation\Validator;
+
+/**
+ * CategoriesLocations Model
+ *
+ * @property \Cake\ORM\Association\BelongsTo $Locations
+ * @property \Cake\ORM\Association\BelongsTo $Categories
+ *
+ * @method \App\Model\Entity\CategoriesLocation get($primaryKey, $options = [])
+ * @method \App\Model\Entity\CategoriesLocation newEntity($data = null, array $options = [])
+ * @method \App\Model\Entity\CategoriesLocation[] newEntities(array $data, array $options = [])
+ * @method \App\Model\Entity\CategoriesLocation|bool save(\Cake\Datasource\EntityInterface $entity, $options = [])
+ * @method \App\Model\Entity\CategoriesLocation patchEntity(\Cake\Datasource\EntityInterface $entity, array $data, array $options = [])
+ * @method \App\Model\Entity\CategoriesLocation[] patchEntities($entities, array $data, array $options = [])
+ * @method \App\Model\Entity\CategoriesLocation findOrCreate($search, callable $callback = null, $options = [])
+ *
+ * @mixin \Cake\ORM\Behavior\TimestampBehavior
+ */
+class CategoriesLocationsTable extends Table
+{
+
+ /**
+ * Initialize method
+ *
+ * @param array $config The configuration for the Table.
+ * @return void
+ */
+ public function initialize(array $config)
+ {
+ parent::initialize($config);
+
+ $this->setTable('categories_locations');
+ $this->setDisplayField('id');
+ $this->setPrimaryKey('id');
+
+ $this->addBehavior('Timestamp');
+
+ $this->belongsTo('Locations', [
+ 'foreignKey' => 'location_id',
+ 'joinType' => 'INNER'
+ ]);
+ $this->belongsTo('Categories', [
+ 'foreignKey' => 'category_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');
+
+ 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(['location_id'], 'Locations'));
+ $rules->add($rules->existsIn(['category_id'], 'Categories'));
+
+ return $rules;
+ }
+}