2017-09-15 112 views
1

你好,我是一个laravel初学者,当我这样做的foreach其显示一倍所有单品我应该怎么用它做代码和SS都低于laravel 5.4表指导需要

Brower image

代码

<div > 
    <h1 style="text-align: center">Lists of Outlets</h1> 
    @foreach($outlets as $outlet) 
     <table class="table table-striped"> 
      <thead> 
      <tr> 
       <th>Firstname</th> 
       <th>Lastname</th> 
       <th>Email</th> 
      </tr> 
      </thead> 
      <tbody> 
      <tr> 
       <td>John</td> 
       <td>Doe</td> 
       <td>[email protected]</td> 
      </tr> 
      </tbody> 
     </table> 
     @endforeach 
</div> 

回答

3

问题是,你把整个表放在循环内,这是错误的。你只需要将tr放入循环中。

试试这个:

@foreach($outlets as $outlet) 
<tr> 
    <td>John</td> 
    <td>Doe</td> 
    <td>[email protected]</td> 
</tr> 
@endforeach 

还有一件事,你还使用循环内的静态内容,而不是使用循环变量值。因此,而不是:

<td>[email protected]</td> 

它是这样的:

<td>{{ $outlet['name'] }}</td> <!-- where name is the index in outlet array --> 
+0

看起来另外一个问题是,它实际上并没有使用'$ outlet'中的任何内容,而是每一个都使用相同的静态值。 –

+0

@ Don'tPanic你是对的 –

1

@foreach应该是内部<tbody>和,而不是硬编码的内容,你应该使用$outlet变量获得名字,姓氏和电子邮件:

<div> 
    <h1 style="text-align: center">Lists of Outlets</h1> 
    <table class="table table-striped"> 
     <thead> 
     <tr> 
      <th>Firstname</th> 
      <th>Lastname</th> 
      <th>Email</th> 
     </tr> 
     </thead> 
     <tbody> 
     @foreach($outlets as $outlet) 
      <tr> 
       <td>John</td> 
       <td>Doe</td> 
       <td>[email protected]</td> 
      </tr> 
     @endforeach 
     </tbody> 
    </table> 
</div>