В моем шаблоне лезвия у меня есть следующая коллекция вопросов
Collection {
#items: array:2 [
0 => Question {
....
#attributes: array:7 [
"survey_id" => 3
"question_num" => 0
"question_text" => "test""expected_answer" => 1
"created_at" => "0000-00-00 00:00:00""updated_at" => "0000-00-00 00:00:00"]
}
1 => Question {#318 ▶}
]
}
Чтобы проверить, существует ли question_num, я могу сделать следующее:
@foreach ($questions as $question) {
@if ($question->question_num == 0)
{{ $question->question_text }}
@endif
@endforeach
Однако есть ли способ сделать что-то подобное, чтобы я мог запросить коллекцию напрямую, без использования цикла?
{{ $questions->where('question_num','=', 0)->get('question_text', null) }}
Применение метода where $questions->where('question_num','=', 0)
дает мне следующий результат:
[{"survey_id":3,"question_num":0,"question_text":"test","expected_answer":1,"created_at":"2016-02-28 14:20:17","updated_at":"2016-02-28 14:20:17"}]
Так почему же он возвращается в ноль, когда я цепью метод get ->get('question_text', null)
Использовать first()
метод вместо. В Ларавеле get()
возвращает массив массивов
Других решений пока нет …