organizatinos имеет отношения многие-один с organType
Табельные организации
id | name | organType_id
1 | a | 1
2 | b | 1
3 | c | 2
4 | d | 3
Table organType
id | name
1 | aa
2 | bb
3 | cc
я в модели организации использования belongsTo=>'organType'
Модельные организации
class organizationsTable extends table
{
public function initialize(array $config)
{
$this->table('organizations');
$this->primaryKey('id');
$this->belongsTo('organType', [
'foreignKey' => 'organType_id',
]);
}
}
Модель organType
class organTypeTable extends table
{
public function initialize(array $config)
{
$this->table('organType');
$this->primaryKey('id');
}
}
контроллер
$organization=TableRegistry::get('organizations');
$organization=$organization->find('all')->offset(0)->limit(30) ;
debug($organization);
но в результате вернуть только таблицу организаций я хочу внутреннее соединение организаций с organ_type
плохой результат:
'sql' => 'SELECT organizations.id AS `organizations__id`, organizations.name AS `organizations__name`, organizations.organType_id AS `organizations__organType_id` FROM organizations organizations LIMIT 30 OFFSET 0',
я хочу этот результат:
'sql' => 'SELECT organizations.id , organizations.name , organizations.organType_id FROM organizations inner join organType on organizations.organType_id=organType.id
для выбора из иностранного стола в CakePHP 3 муза используется contain(['organType'])
$organization=$organization->find('all')->contain(['organType'])->offset(0)->limit(30) ;
Других решений пока нет …