0

我正在尝试让分页在 Laravel 中工作。我之前没有使用过分页,所以我尝试使用文档和谷歌结果中的一些示例。我想知道是否需要在配置中的某个地方打开“分页”。

这是我的简单工作控制器:

public function get_index() {
  $locations = Location::all();
  return View::make('location.index')->with('locations', $locations)->render();
}

当我尝试像这样添加分页时,它会中断:

public function get_index() {
  $locations = Location::paginate(5);
  return View::make('location.index')->with('locations', $locations)->render();
}

..我得到错误:

Unhandled Exception

Message:
Error rendering view: [location.index]

Trying to get property of non-object

这是我的 location.index 视图:

@layout('layouts.blank')
@section('content')
<div class="row">
<div class="twelve columns">
    <div role="main" id="content">
        <h3>Locations - All</h3>
        @if($locations)
            <table class="twelve">
                <thead>
                    <tr>
                        <th style="text-align: left;">Address</th>
                        <th>Area</th>
                        <th>Region</th>
                        <th>Edit</th>
                        <th>Delete</th>
                    </tr>
                </thead>
                @foreach($locations as $location)
                <tbody> 
                    <tr>
                        <td style="text-align: left;">{{ $location->company,', ',$location->add_name,', ',$location->add_city }}</td>
                        <td> – </td>
                        <td> – </td>
                        <td>{{ HTML::link('location/update/'.$location->id, '',array('class'=>"foundicon-edit updateicon")) }}</td>
                        <td>{{ HTML::link('location/delete/'.$location->id, '',array('class'=>"foundicon-remove warnicon")) }}</td>
                    </tr>
                </tbody>
                @endforeach
            </table>
        @else
          Looks like we haven't added any locations, yet!
        @endif
        <p>{{ HTML::link('location/create', 'Create a location', array('class'=>"small radius button")) }}</p>
    </div>
</div>
</div>
@endsection
4

1 回答 1

1

我对这个主题的阅读不够深入。它现在正在工作,这是我必须在视图中更改的内容:

//from:
@foreach($locations as $location)

//to:
@foreach($locations->results as $location)

那只返回了 5 个结果。然后添加到我的表格页脚的链接,我添加了这个 HTML/Blade:

<tfoot>
  <tr>
    <td colspan="5"> {{ $locations->links() }} </td>
  </tr>
</tfoot>

希望其他人受益,因为我在文档中没有发现这一点非常清楚。

于 2013-04-04T15:47:43.807 回答