簡體   English   中英

具有雄辯關系的數據表的Foreach循環遍歷數組

[英]Foreach Loop Through Array for Datatables With Eloquent Relations

我的數據庫中有2個表格Bots and Results 機器人表僅包含有關每個特定機器人的信息。 每個漫游器都應附有多個結果。 我將簡化我在專欄中的內容:

機器人表

Device | Info1 | Info2  | Info3

結果表

Device | Data1 | Data2 | Data3

如您所見,每個表都有名為Device的列。 現在,我當然為每個表提供2個模型-有關信息如下:

機器人模型

public function results()
{
  return $this->hasMany('App\Result', 'device', 'device');
}

結果模型

public function bots()
{
  return $this->belongsTo('App\Bot', 'device', 'device');
}

我有一個帶有數據表的視圖,該表試圖列出每個Device以及與該Device相對應的每個Result 我這里的例子說明了引入有說服力的關系之前所做的事情。我過去只擁有結果表,因此,進行foreach和遍歷我必須在數據表上顯示的每個結果非常簡單

數據表視圖

@foreach ($results as $result)
<tr>
  <td>
    {{ $result->device }}
  </td>
  <td>
    {{ $result->info1 }} 
  </td>
  <td>
    {{ $result->info2 }}
  </td>
  <td>
    {{ $result->info3 }}
  </td>
  <td>
    {{ $result->data1 }} 
  </td>
  <td>
    {{ $result->data2 }}
  </td>
  <td>
    {{ $result->data3 }}
  </td>
</tr>
@endforeach

現在設備名稱和信息實際上存儲在單獨的表中,如何使它起作用?

您可以使用這樣的緊急負載獲取設備信息及其相關results

$bots = Bot::with('results')->get();

現在看來,您可以這樣做

@foreach ($bots as $bot)
    <tr>
        <td>
            {{ $bot->device }}
        </td>
        <td>
            {{ $bot->info1 }} 
        </td>
        <td>
            {{ $bot->info2 }}
        </td>
        <td>
            {{ $bot->info3 }}
        </td>
    </tr>
    @foreach ($bot->results as $result)
        <tr>
          <td>
            {{ $result->data1 }} 
          </td>
          <td>
            {{ $result->data2 }}
          </td>
          <td colspan="2">
            {{ $result->data3 }}
          </td>
        </tr>
    @endforeach
@endforeach

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM