Laravel分页{{$ users-> links}}不存在

时间:2019-01-24 13:20:48

标签: php laravel laravel-5.7

我设置了一个视图编辑器,并在使用

进行分页时将视图数据共享给侧边栏。
User::paginate(1)

并将$ users-> links放入刀片中,它表示未找到链接,但在我使用时

User::all()

它可以正常工作,并且不会出错,但是我无法对表进行分页,我看不到错误的出处。这是错误显示:

  

调用未定义的方法App \ User :: links()(查看:         C:\ Users \ kaasv \ medialab \ resources \ views \ layouts \ sidebar.blade.php)         (视图:         C:\ Users \ kaasv \ medialab \ resources \ views \ layouts \ sidebar.blade.php)         (视图:         C:\ Users \ kaasv \ medialab \ resources \ views \ layouts \ sidebar.blade.php)

AppServiceProvider

   use Illuminate\Support\ServiceProvider;
   use Illuminate\Support\Facades\Schema;
   //use Illuminate\View\View;
   use View;
   //use App\Repositories\UserRepository;

   use App\User;

  class AppServiceProvider extends ServiceProvider
{
/**
 * Bootstrap any application services.
 *
 * @return void
 */
public function boot()
{
    Schema::defaultStringLength(191);

    View::share('user', User::paginate(1));

}

/**
 * Register any application services.
 *
 * @return void
 */
public function register()
{
    //
}
}

sidebar.blade.php

    <h1>Alle Studenten</h1>

  @if (Auth::check())


<table class="table">
    <tr>
        <th scope="col">#</th>
        <th scope="col">Name</th>
        <th scope="col">Student Number</th>
    </tr>
    @foreach($user as $users)

        <tr>
            <th scope="row">
               {{$users->id}}
            </th>
            <th>
                <a class="text-dark" href="/admin/leerling/{{ $users->id }}">
                    {{$users->name}}
                </a>
            </th>
            <th>
                {{$users->student_number}}
            </th>
        </tr>

    @endforeach

</table>

{{ $users->links() }}

     @endif

1 个答案:

答案 0 :(得分:2)

首先,我不建议使用Laravel's View Composers,因为它们会在每个视图上初始化,即使您使用@include@extends等添加的视图也会被初始化。如果您从Composers共享的数据是从数据库中提取的,则性能会受到严重影响。

第二,paginate()方法接受number of results to return作为参数,这意味着仅返回1的用户将解析为实际上拥有方法的Paginator实例正在寻找:links(),但是问题是您正在命名user,在视图中访问users的位置