В моей форме revision у меня 2 мотоцикла в ревизии. Есть числа 000001 и 000003.
В моей форме motorbikes я вижу, что идентификатор мотоцикла 000002 был изменен вместо идентификационного номера 000003.
Есть проблема с удостоверением личности?
В моем мотоцикле Controller у меня есть это:
public function index()
{
$motorbikes = Motorbike::oldest()->paginate(5);
$bikeIdsDown = Revision::where('date_revision_start', "<" , Carbon::now())->where('date_revision_end', ">", Carbon::now())->pluck('id')->toArray();
return view('admin.motorbikes.index', compact('motorbikes', 'bikeIdsDown'))
->with('i', (request()->input('page',1) -1)*5);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
$revisions = Revision::all();
$bikeIdsDown = Revision::where('date_revision_start', "<" , Carbon::now())->where('date_revision_end', ">", Carbon::now())->pluck('id')->toArray();
return view('admin.motorbikes.create', compact('revisions', 'motorbikes'));
}
В моем index.blade у меня также есть это:
@foreach($motorbikes as $motorbike)
<tr>
<td>{{$motorbike->matriculation }} </td>
<td>{{$motorbike->number_motorbike}}</td>
<td> @if (in_array($motorbike->id, $bikeIdsDown))
UNAVAILABLE
@else
Available
@endif
</td>






Похоже, $bikeIdsDown собирает idРедакция, а не мотоциклы. FK мотоцикл на модели Редакция равен fk_motorbike. Итак... попробуйте изменить запрос $bikeIdsDown, чтобы получить FK, а не идентификатор версии:
$bikeIdsDown = Revision::where('date_revision_start', "< = " , Carbon::now())
->where('date_revision_end', "> = ", Carbon::now())
->pluck('fk_motorbike')->toArray(); //<-- fk of motorbike, not revision
Также обратите внимание, я добавил <= и >= к сравнению дат — не уверен, хотите ли вы включать тот же день в ревизии или нет.