【问题标题】:Laravel pagination with comments带有评论的 Laravel 分页
【发布时间】:2016-01-24 18:09:19
【问题描述】:

我正在构建一个票务系统。一张票可以有多个 cmets。但是我怎样才能正确地分页呢?

这是我的控制器:

public function showTicket($slug)
{
     $ticket = Ticket::whereSlug($slug);
     if(Auth::user()->id == $ticket->user_id)
     {
        return view('users.ticket')->with('ticket',$ticket);
     }
}

这是我现在的看法:

 @foreach($ticket->reactions as $reaction)
    <div class="panel panel-default">
        <div class="panel-heading"><strong>{!! ucfirst($reaction->user->name) !!}  {!! $reaction->user->lastname !!}<span class="pull-right">{!! $reaction->created_at !!}</span></strong></div>
              <div class="panel-body">
                       {!! $reaction->content !!}
        </div>
   </div>
 @endforeach

当我在我的控制器中说:

$ticket = Ticket::whereSlug($slug)->paginate(15);

在我看来:

{!! $ticket->reactions->render() !!}

它不工作。

【问题讨论】:

  • 渲染不工作时会出现什么错误?
  • 我收到错误:UserTicketsController.php 第 73 行中的 ErrorException:未定义属性:Illuminate\Pagination\LengthAwarePaginator::$user_id

标签: php pagination laravel-5


【解决方案1】:

在你的控制器中

function showTicket($slug) 
{
    $ticket = Thicket::whereSlug($slug)->first();
    $reactions = $thicket->reactions()->paginate(15);

    if(Auth::user()->id == $ticket->user_id)
        return view('users.ticket', compact('ticket', 'reactions'));
}

在你看来

@foreach($reactions as $reaction)
    <div class="panel panel-default">
        <div class="panel-heading"><strong>{!! ucfirst($reaction->user->name) !!}  {!! $reaction->user->lastname !!}<span class="pull-right">{!! $reaction->created_at !!}</span></strong></div>
            <div class="panel-body">
                {!! $reaction->content !!}
        </div>
    </div>
@endforeach

【讨论】:

    猜你喜欢
    • 2012-08-27
    • 1970-01-01
    • 2021-02-20
    • 1970-01-01
    • 1970-01-01
    • 2016-08-17
    • 2012-03-01
    • 1970-01-01
    • 2010-11-09
    相关资源
    最近更新 更多