Однако для меня непрактично постоянно обновлять все сайты транспортных средств, которыми я управляю, одной и той же информацией. поскольку это приводит к избыточности данных, особенно при работе с большим объемом информации.
Чтобы решить эту проблему, моей идеей было создать общую базу данных для хранения данных, которые будут использоваться всеми сайтами и необходимо поддерживать в актуальном состоянии. Общая база данных содержит вложенные таблицы годов, версий, моделей, марок, типов.
Проблема заключается в интеграции. Моя основная база данных (и будущие базы данных, поскольку их будет несколько, и все они относятся к общей базе данных) хранят данные о перечисленных транспортных средствах, включая ссылку наyear_id транспортного средства, которая хранится в общей базе данных.
Я, как обычно, уже настроил модель в своем проекте Laravel, включая отношения BelongsTo. Я также указал соединение, которое будет использоваться для моделей «Год», «Версия», «Модель», «Бренд» и «Тип».
Однако, когда я пытаюсь использовать контроллер, это не удается. Например, он пытается выполнить поиск version.id не в той базе данных. Я попробовал несколько решений, но пока ни одно не сработало.
PS. Я рассматриваю возможность использования API для связи с базой данных в будущем, чтобы я мог реализовать кеш в ответе, чтобы минимизировать запросы к общей базе данных, не знаю, повлияет ли это сейчас, я думаю, что смогу изменить его позже.
Вот часть контроллера:
Код: Выделить всё
`
public function index()
{
$ajustes = Ajustes::first();
$cars = Vehicles::query()
->with(['year.version.model.brand.type'])
->status(1)
->typeId(1)
->orderBy('vehicles.created_at', 'DESC')
->limit($ajustes->max_cars ?? 5)
->get();
`
`
Подробнее здесь: https://stackoverflow.com/questions/792 ... ship-model