在我的revision
表格中,我有2辆摩托车正在修订中。有数字000001
和000003
。
在表单motorbikes
中,我看到摩托车000002
的ID已被修改,而不是ID号000003
。
有关ID的问题?
在我的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>
答案 0 :(得分:1)
看起来$bikeIdsDown
正在收集修订版的id
,而不是摩托车。 修订版模型上的摩托车的FK为fk_motorbike
。因此...尝试更改$bikeIdsDown
查询以拉出FK,而不是修订版ID:
$bikeIdsDown = Revision::where('date_revision_start', "<=" , Carbon::now())
->where('date_revision_end', ">=", Carbon::now())
->pluck('fk_motorbike')->toArray(); //<-- fk of motorbike, not revision
还请注意,我在日期比较中添加了<=
和>=
-不知道您是否要在修订中包括同一天。