Использование нумерации страниц с foreach roop в Laravel

Ниже код включает в себя оператор руп и пагинацию.
Я также хотел бы следовать кодированию в стиле MVC, но в этом случае я должен использовать оператор @if в представлении ниже.

Произошла ошибка, когда я попытался отфильтровать по @if (! Delete_at == null), но я не смог показать правильную нумерацию страниц, потому что этот код также считался с «(удаленный_at == null)», поэтому результатом были неправильные числа нумерации страниц показано на рисунке.

Как я могу изменить этот код, чтобы получить правильный результат разбиения на страницы при прохождении этого контроллера?

Я думаю, что ошибка произошла от использования Where () с Orwhere ().
Спасибо:)

Поле поиска по имени пользователя и имени клиента

введите описание изображения здесь

index.php

 <div style="overflow-x: auto; display: inline-flex;">
{!! Form::open(array('class' => 'form', 'method' => 'get', 'url' => url('/stopjobs/job_finished_search_date'))) !!}
{{ Form::input('text', 'datepicker_from', null, ['placeholder' => 'Fra', 'id' => 'datepicker_from']) }}
&nbsp;
{{ Form::input('text', 'datepicker_to', null, ['placeholder' => 'Til', 'id' => 'datepicker_to']) }}
{!! Form::submit('Søke', ['class' => 'btn btn-success btn-sm']) !!}
{!! Form::close() !!}
&nbsp;
{!! Form::open(array('class' => 'form', 'method' => 'get', 'url' => url('/stopjobs/job_finished_search_name'))) !!}
{!! Form::text('name', null, ['placeholder' => 'Bruker eller Kunde']) !!}
{!! Form::submit('Søke', ['class' => 'btn btn-success btn-sm']) !!}
{!! Form::close() !!}
</div>

контроллер

public function job_finished_search_name(Request $request)
{
$jobs = Job::onlyTrashed()
->where('user_name', 'like', '%'.$request->name.'%')
->orwhere('customer_name', 'like', '%'.$request->name.'%')
->orderBy('deleted_at', 'desc')
->paginate(15);

return view('stopjobs.index', ['jobs' => $jobs]);
}

Посмотреть

<tbody>
@foreach($jobs as $job)
@if(!$job->deleted_at == null)
<tr>
<td>{!! $job->id !!}</td>
<td>{!! $job->user_name !!}</td>
<td>{!! $job->created_at !!}</td>
<td>{!! $job->deleted_at !!}</td>
<td>{!! $job->usedTime() !!}</td>
</tr>
@endif
@endforeach
</tbody>
</table>
</div>
{{ $jobs->links()}}

1

Решение

Когда вы запрашиваете свою работу, делайте это с where заявление. Там нет другого пути

$jobs = Job::whereNull('deleted_at')->get();
0

Другие решения

Если вы хотите отобразить только мягко удаленные данные с нумерацией страниц, попробуйте это

$jobs = Job::onlyTrashed()
->where('key', 'value')
->paginate();
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector