我有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)