当 Select 和 Eloquent 时重复数据

Duplicate Data When Select With Eloquent

我正在尝试创建 project. When I tried to get the data, it duplicate for 47 times (I have 47 data for each report) like this 的详细信息页面。我需要的只是一行中的一个数据,然后是下一行中的第二个数据,等等。这也发生在编辑页面上。

我的看法:

@foreach($sasarans as $i => $sasaran)
   @foreach($sasaran->indikator as $indikator)
     @foreach($indikator->pertanyaan as $pertanyaan)
     <tr>
       @if($loop->first)
         <td style="text-align:center; vertical-align:middle;" rowspan="{{$indikator->pertanyaan->count()}}">{{$i+1}} </td>
         <td style="vertical-align:middle;" rowspan="{{$indikator->pertanyaan->count()}}">{{$sasaran->sasaran}} </td>
          <td style="vertical-align:middle;" rowspan="{{$indikator->pertanyaan->count()}}">{{ $indikator->indikator}} </td>
       @endif
           <td style="vertical-align:middle;">{{ $pertanyaan->pertanyaan}}</td>
            @foreach($data_laporans as $data)
               <td>{{$data->jumlah}}</td>
               <td>{{$data->keterangan}}</td>
               <td><a href="{{ route('data.download', $data->id) }}" class="btn btn-sm btn-default btn-block"><i class="fa fa-download"></i> Unduh Bukti</a></td>
             @endforeach
        </tr>
     @endforeach
   @endforeach
@endforeach

控制器:

 public function show($id)
{
    $sasarans = Sasaran::all();
    $laporan_indikators = LaporanIndikator::where('id',$id)->first();
    $data_laporans = DataLaporan::where('id_laporan',$id)->get();

    return view('indikator-kinerja.show',compact('laporan_indikators','data_laporans','sasarans'));
}

我也尝试在 phpMyAdmin 中执行我的查询并且没有重复数据。 Data in PhpMyAdmin

您可以在中查看模型关系和其他详细信息。我很抱歉我的英语不好。请帮助我,因为我还是初学者。谢谢。

尝试了几次,其实我只需要换个视角就可以了:

 @foreach($sasarans as $i => $sasaran)
   @foreach($sasaran->indikator as $indikator)
     @foreach($indikator->pertanyaan as $pertanyaan)
     <tr>
       @if($loop->first)
         <td style="text-align:center; vertical-align:middle;" rowspan="{{$indikator->pertanyaan->count()}}">{{$i+1}} </td>
         <td style="vertical-align:middle;" rowspan="{{$indikator->pertanyaan->count()}}">{{$sasaran->sasaran}} </td>
          <td style="vertical-align:middle;" rowspan="{{$indikator->pertanyaan->count()}}">{{ $indikator->indikator}} </td>
       @endif
           <td style="vertical-align:middle;">{{ $pertanyaan->pertanyaan}}</td>
            @foreach($pertanyaan->data_laporan as $data)
               <td>{{$data->jumlah}}</td>
               <td>{{$data->keterangan}}</td>
               <td><a href="{{ route('data.download', $data->id) }}" class="btn btn-sm btn-default btn-block"><i class="fa fa-download"></i> Unduh Bukti</a></td>
             @endforeach
        </tr>
     @endforeach
   @endforeach
@endforeach