我有2个不同的表数据有order_id
,我想排序它在laravel刀片foreach。
我的控制器:
$questions = Question::where('quiz_id', $quiz->id)->orderBy('order_id', 'asc')->get();
$explanations = Explanations::where('quiz_id', $quiz->id)->orderBy('order_id', 'asc')->get();
My Blade:(我想按order_id对这两个foreach进行排序)
@foreach($questions as $question)
<p>{{$question->title}}</p>
@endforeach
@foreach($explanations as $explanation)
<p>{{$explanation->title}}</p>
@endforeach
我的结果:
<p>First Question</p> //order_id: 1
<p>Second Question Question</p> //order_id: 3
<p>First Explanation</p> //order_id: 2
<p>SecondExplanation</p> //order_id: 4
我想要的结果:
<p>First Question</p> //order_id: 1
<p>First Explanation</p> //order_id: 2
<p>Second Question</p> //order_id: 3
<p>Second Explanation</p> //order_id: 4
3条答案
按热度按时间qvsjd97n1#
在控制器中使用toArray()和array merge合并两个数组,并在控制器中对它们进行排序
5jdjgkvh2#
如果有效,请尝试以下操作:
或者使用
jsondecode()
将问题和解释转换为数组,然后:只有当问题和解释的数量相同时,这才有效。
8yoxcaq73#
如果在解释中有一个问题id,那么你可以加入表,你可以很容易地得到你想要的。
或者也许这东西对你有用。