3

次のように、ビューでページをページ分割しようとしています。

@foreach($tasks as $task)
    {{ $task->user_id }}
    {{ $task->client_id }}
    {{ $task->description }}
    {{ $task->duration }}
    {{ link_to_route('clients.show', 'View client', array($task->client_id), array('class' => 'btn btn-primary')) }}
@endforeach
    {{ $tasks->links() }}

コントローラーで次のクエリを使用します。

$tasks = DB::table('tasks')
    ->join('users', 'tasks.user_id', '=', 'users.id')
    ->join('clients', 'tasks.client_id', '=', 'clients.id')
    ->select(array('tasks.description', 'tasks.duration', 'tasks.client_id', 'tasks.user_id', 'users.email', 'clients.name'))
    ->where('tasks.group_id', '=', $usergroup)
    ->orderBy('tasks.created_at', 'DESC')
    ->paginate(20);

    return View::make('tasks.index', compact('tasks'));

タスクは正常に表示されますが、ページネーション リンクが表示されないため、20 件の結果の次のバッチに進むことができません。

これをどのように機能させることができるかについてのアイデアはありますか?

http://forums.laravel.io/viewtopic.php?id=4092で提案されているように、ビューで @foreach($tasks->result as $task) を試しましたが、「未定義のプロパティ: Illuminate」というエラーが表示されます\Pagination\Paginator::$result"

4

1 に答える 1