@iSensetivity
бухгалтер, програміст-самоук

Почему не срабатывает выборка из 2-х таблиц?

Час сижу и не могу никак сделать выборку из 2-х таблиц.
Есть две таблицы. anime_short и anime_long.
anime_short
7226602.pnganime_long
7219434.png

Для таблицьі anime_long прописан внешний ключ:
ALTER TABLE `anime_long` ADD CONSTRAINT `anime_long_ibfk_1` FOREIGN KEY (`short_id`) REFERENCES `cakephp3_db`.`anime_short`(`id`) ON DELETE CASCADE ON UPDATE NO ACTION;

Ф-ция инициализации anime_short

public function initialize(array $config)
    {
        $this->table('anime_short');
        $this->hasOne('anime_long');
        $this->displayField('id');
        $this->primaryKey('id');
    }


Ф-ция инициализации anime_long
public function initialize(array $config)
    {
        $this->table('anime_long');
        $this->belongsTo('AnimeShort', [
            'foreignKey' => 'short_id',
            'joinType' => 'INNER'
        ]);
    }


Вьіборку делаю так:
$this->loadModel('AnimeShort');
$a_s = $this->AnimeShort->get(108);
 debug($a_s);

Возвращает данные из первой таблицы.
  • Вопрос задан
  • 194 просмотра
Пригласить эксперта
Ответы на вопрос 1
AmberLEX
@AmberLEX
php/web-developer
Возможно нужно дописать что-то вроде
$this->loadModel('AnimeShort')->contain(['AnimeLong']);

Смотрите здесь book.cakephp.org/3.0/en/orm/associations.html#haso...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы