Как исправить шаблон пагинации в laravel 9
Добрый день знатоки laravel. Дошёл до темы пагинации в изучении данного вопроса и схватил стопор. Хоть в документации про пагинацию в ларавель было сказано что работа с ней - это глоток свежего воздуха по сравнению с другими фреймворками, я такого ощущения не ощутил. Вот как всё было Создал контролер:
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\DB;
use App\Models\User;
class UserController extends Controller {
public function show() {
return view('user.data', ['users' => User::paginate(2)]);
}
}
И в представлении вида:
<ul>
@foreach ($users as $user)
<li>{{ $user->name }}</li>
@endforeach
</ul>
{{ $users->links() }}
Решил глянуть, а что собственно у меня на страничке происходить. После созерцания таковой у меня буквально глаза на лоб вылезли:
Да безусловно метод пагинейт отработал как надо и вывел 2 записи как от него и ожидалось. Но какого лешия помимо этого вывелось ещё чёрт знает что, вот чём главный вопрос. Причём когда в контролере у меня присутвовала запись вида: 'users' => DB::table('users')->simplePaginate(2) всё работало исправно и выводились две ссылки « Previous и Next ». Но в современных реалиях однако мало только двух ссылок, требуется более точная деталиция и поэтому смекнув так я пошёл дальше, но увы встретил на своём пути данное безобразие. Мне нужны были ссылки как числа, и да они есть ниже если пролистать страницу, но накой, ещё раз спрашиваю, чёрт помимо них ещё хрен пойми что. Помниться в старой версии (это я узнал из видео, просмотренного накануне) не было такой беды. Если кто сталкивался с данной ошибкой присоветуйте способы её решения.
Ответы (2 шт):
Можно использовать свой шаблон. Варианты подключения:
- Скопировать стандартный шаблон
php artisan vendor:publish --tag=laravel-paginationи править его. {{ $paginator->links('view.name') }}
<?php
namespace App\Providers;
use Illuminate\Pagination\Paginator;
use Illuminate\Support\Facades\Blade;
use Illuminate\Support\ServiceProvider;
class AppServiceProvider extends ServiceProvider
{
public function boot()
{
Paginator::defaultView('view-name');
Paginator::defaultSimpleView('view-name');
}
}
См. https://laravel.com/docs/8.x/pagination#customizing-the-pagination-view
Проблему на 10 версии решил добавлением стоки в файл tailwind.config.js в массив content
'./vendor/laravel/framework/src/Illuminate/Pagination/resources/views/*.blade.php',