如何在Laravel中只打印一行具有特定ID的行?

时间:2017-05-16 23:59:13

标签: laravel laravel-5.4

这是我的观点:

@foreach($questions as $q)
    print question {{ $q->name }}
    @foreach($answer as $a)
        @if($a->question_id == $q->id)
            print answer {{ $a->name }} //here I want only one answer
        @endif
    @endforeach
@endforeach

这是我的控制者:

$questions = Question::get();
$answer = Answer::get();
return view('page', compact('questions', 'answer'));

我想打印问题,然后每个问题只有一个答案。由于每个问题有很多答案,我怎么能限制它只打印一个?我是否以某种方式在控制器中完成?对不起,我问这个有点愚蠢的问题,但我不知道怎么去谷歌。

1 个答案:

答案 0 :(得分:0)

假设您已正确设置关系,使用Laravel的Collection类first方法就可以轻松实现:

@foreach($questions as $q)
    print question {{ $q->name }}
    print answer {{ $q->answers->first()->name }}
@endforeach