Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Всем добрый день!
Есть несколько моделей, которые могут иметь одно изображение. В тоже время одно изображение может быть привязано к нескольким моделям. Информация о всех изображениях хранится в таблице images.
По конкретнее...
Модели: User, Equipment, Vehicle
Изображения: Image
Т.е. например User может иметь только одно Image, а одно Image может быть привязано к нескольким User. Также с Equipment и Vehicle.
Все привязки я хочу сделать через таблицу imageables:
Schema::create('imageables', function (Blueprint $table) {
$table->id();
$table->foreignId('image_id')
->constrained('images')
->cascadeOnDelete();
$table->morphs('imageable');
$table->timestamps();
$table->unique(['image_id', 'imageable_id', 'imageable_type']);
});
Но пока не пойму, как мне связать всё это через такую связующую таблицу? Чтобы например $user->image сразу выдавало изображение, а $mage->users / $image->equipment - список пользователей / оборудования...
Не в сети