来自Laravel的另一个模型关系的随机数据



我有2个模型(类别和公司),它们之间有关系。我想向随机的公司展示。如何在子查询中使用inrandomorder/shuffle()

我尝试过。但是它会造成类别,但没有公司。我需要对面。

$categoriesAll = AppCategory::all()->shuffle();

我的观点看起来像这样:

@foreach ($categoriesAll as $categoryAll)
  <div class="header">
    <i class="{{ $categoryAll->icon }} icon-bg-{{ $categoryAll->id }}"></i> 
    <h4>{{ $categoryAll->name }}</h4>
  </div>
<ul class="category-list" >
    <?php   $j= 0; ?>
    @foreach ( $categoryAll->companies as $singleCompany)
        <li><a href="category.html">{{ $singleCompany->name}} </a></li>
        <?php if (++$j == 4) break; ?>
    @endforeach
</ul>
<?php if (++$i == 8) break; ?>

谢谢您的帮助。

@foreach ($categoryAll->companies->shuffle() as $singleCompany)

在您想洗牌的收藏集上呼叫混音。

旁注:

我们在刀片中的foreach环中有一个$loop var,具有迭代计数和类似的内容,因此您不必创建自己的计数器。

如果您只需要一定的数量,只需拿很多。

@foreach ($categoriesAll->take(8) as $categoryAll)
...
   @foreach ($categoryAll->companies->shuffle()->take(4) as $singleCompany)

最新更新