У меня две базы данных.
wordpress: database1
mysql: database2
database1 имеет таблицу wp_posts (Post. php model)
database2 имеет таблицу news_tag (NewsTag . php модель) и издателя (Publisher. php) модель.
wp_posts has:
id
news_tag has:
id
post_id
publisher_id
publishers have:
id
Я пытаюсь получить доступ к издателю из wp_posts. Как я могу этого добиться?
В модели Post. php я пробовал что-то вроде:
public function publisher() {
return $this->hasManyThrough(
Publisher::Class,
NewsTag::Class,
'post_id',
'publisher_id',
'id',
'id',
'id');
}
Может быть, я не могу получить доступ к нескольким базам данных в одной модели? Я получаю эту ошибку:
SQLSTATE[42S02]:
Base table or view not found: 1146 Table 'db_news.wp_publishers' doesn't exist
(SQL: select `wp_publishers`.*, `wp_news_tags`.`post_id` as `laravel_through_key`
from `wp_publishers` inner join `wp_news_tags` on `wp_news_tags`.`id` =
`wp_publishers`.`publisher_id` where `wp_news_tags`.`post_id` in (?) and
`wp_publishers`.`deleted_at` is null and `wp_news_tags`.`deleted_at` is null)