Laravel отношения между различными базами данных - PullRequest
0 голосов
/ 15 января 2019

В настоящее время я пытаюсь сделать следующее в проекте Laravel 5.4

$this->belongsToMany(Module::class,'platform_modules_acquired', 'platform_id', 'module_id');

Теперь класс module извлекается из таблицы в базе данных admin, а таблица platform_modules_acquired находится в базе данных clients. Когда я пытаюсь запустить приведенный выше код, я получаю сообщение о том, что таблица platform_modules_acquired не найдена в базе данных admin

Я попытался изменить вышеупомянутый запрос, сказав, что таблица clients.platform_modules_acquired, но все еще не нашел таблицу. Также я попытался добавить ->using('PlatformModules::class'), но все еще получал ту же ошибку ...

SQLSTATE[42S02]: Base table or view not found: 1146 Table 'admin.plataformas_modulos_contratados' doesn't exist (SQL: select 'module' from 'modules' inner join 'platform_modules_acquired' on 'modules'.'id' = 'platform_modules_acquired'.'module_id' where 'platform_modules_acquired'.'platform_id' = 187)

Как можно заставить это отношение искать в таблице clients таблицу?

1 Ответ

0 голосов
/ 15 января 2019

Вы можете использовать соединение внутри отношения следующим образом:

$this->belongsToMany(Module::class,'clients.platform_modules_acquired', 'platform_id', 'module_id');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...