首页 > 解决方案 > 我无法传递数据来查看它在 laravel 中显示 http 错误 500

问题描述

大家好,我是 laravel 的新手,我试图展示用户发布的评论。现在我检查了 dd() 并且确实我能够获取该数据但是当我将它发送到视图时 laravel 响应 Http 错误 500。以前我只发送工作正常的医生数据但是当我试图通过评论这件事发生了。这是我的显示配置文件功能

     public function profile($id)
    {
    $doctor=Doctor::find($id);
    $reviews=Review::where('doctor_id',$doctor->account_id)->get();

   // dd($doctor,$reviews);
    //  foreach($reviews as $review)
    //  {
    //      dd($doctor,$review);
    //  }
   // dd($reviews);
   // dd(DB::select("select * from reviews where doctor_id='D-1'"));
    //dd(Review::all()->where('doctor_id',$doctor->account_id));
   // $reviews=;
  // $array=['reviews'=>$reviews];
    return View('pages.doctorProfile',['reviews'=>$reviews])->with('doctor',$doctor);
}

这是我试图展示评论的视图部分

@foreach($reviews as $review)
    <!-- Comment List -->
    <li>
    <div class="comment">
        <img class="avatar avatar-sm rounded-circle" alt="User Image" src="/storage/images/patients/{{$review->patient->image}}">
        <div class="comment-body">
            <div class="meta-data">
                <span class="comment-author">{{$review->patient->first_name}} {{$review->patient->last_name}}</span>
                <span class="comment-date">{{$review->created_at}}</span>

            </div>
            <div  class="review-count rating">
                <?php $rating=explode('-',$review->rating)  ?>
                @for($i=1;$i<=5;$i++)
                    @for($i=1;$i<=$rating[1];$i++)
                        <i class="fas fa-star filled"></i>
                    @endfor
                    <i class="fas fa-star"></i>
                @endfor
                {{-- <i class="fas fa-star filled"></i>
                <i class="fas fa-star filled"></i>
                <i class="fas fa-star filled"></i>
                <i class="fas fa-star filled"></i>
                <i class="fas fa-star"></i> --}}
            </div>
            <p class="comment-content">
               {{$review->content}}
            </p>
            <div class="comment-reply">
                <a class="comment-btn" href="#">
                    <i class="fas fa-reply"></i> Reply
                </a>

            </div>
        </div>
    </div>
    </li>
    <!-- /Comment List -->
@endforeach

需要这个快速解决。请帮忙

标签: laravel

解决方案


@for($i=1;$i<=5;$i++)
     @for($j=1;$j<=$rating[1];$j++)
          <i class="fas fa-star filled"></i>
     @endfor
     <i class="fas fa-star"></i>
@endfor

将 i 更改为 j,因为执行无限时间

我想你正在考虑

 @for($i=1;$i<=5;$i++)
    <i class="fas fa-star {{ $i<= $rating[1] ? 'failed' : '' }}"></i>
 @endfor

推荐阅读