У меня есть несколько изображений в моей таблице загрузок, связанных с vehicle_id, как внешний ключ, подобный этому,
uploads table
id fileName vehicle_id
1 1.jpg 1
2 2.jpg 1
3 3.jpg 1
4 4.jpg 1
5 28.png 2
6 28.png 2
7 29.png 2
8 30.png 3
9 31.png 3
10 56.png 3
Таблица транспортных средств имеет отношения "многие ко многим" с таблицей изображений и графиком данных с использованием нетерпеливого загрузчика в VehicleController,
$vehicles = Vehicle::with('uploads')->get();
return view('vechicles.index')->withVehicles($vehicles);
Теперь эти изображения отображаются в файле cars / index.blade.php.
@foreach($vehicle->uploads as $upload)
<tr>
<td><a href="{{route('vechicles.show',$vehicle->id)}}"><img src="/images/{{ $upload->resized_name }}"></a></td>
</tr>
@endforeach
Моя проблема возникла сейчас, поэтому я могу показать все изображения в таблице, связанные с правильным vehicle_id, но мне нужно показать только одно изображение (для соответствия vehicle_id) как эскиз к строке выше. Тогда как я могу это настроить? на самом деле мне нужно только одно изображение для печати в index.blade.php, связанное с каждым vehicle_id, в качестве примера вот 4 изображения, связанные с vehicle_id 1. но мне нужно только распечатать по убыванию или одно изображение для печати и то же самое для vehicle_id 2 и и т.д .... как это сделать?
Обновленная модель пользователя
class Upload extends Model
{
public function vehicle()
{
return $this->belongsTo(Vehicle::class);
}
}
обновленная модель автомобиля
class Vehicle {
public function thumbnail() {
return $this->hasOne(Upload::class)->orderByDesc('id');
}
}
$vehicles = Vehicle::with('thumbnail')->get();
текущий файл Blade
@if($vehicles)
@foreach($vehicles as $vehicle)
{{$vehicle->district}}
{{$vehicle->town}}
{{$vehicle->brand}}
{{$vehicle->model}}
<hr>
<tr>
@foreach($vehicle->thumbnail as $aaa)
<img src="/images/{{ $aaa->resized_name }}">
@endforeach
</tr>
@endforeach
@endif
uploads
отношения. - person Jonas Staudenmeir   schedule 13.07.2018