@if (! empty (...)) игнорируется, хотя данные не возвращаются в объект - PullRequest
1 голос
/ 09 января 2020

Я пытаюсь показать комментарии, если входящий объект !empty следующим образом.

@if(!empty($comments))

            <h3>Other people comments</h3>

          @foreach ($comments as $comment)
             <p>{{ $comment->comment }}</p>
          @endforeach
@endif

Но проблема в том, что !empty всегда игнорируется, и <h3>Other people comments</h3> всегда отображается, хотя комментариев нет.

Ниже приводится var_dump для комментариев $ 1009 *

object(Illuminate\Database\Eloquent\Collection)#354 (1) { ["items":protected]=> array(0) { } }

Я что-то упустил?

Ответы [ 2 ]

1 голос
/ 09 января 2020

$comments не пустой, он содержит объект. Существует метод count(), который можно использовать для определения наличия в коллекции каких-либо предметов.

@if($comments->count())
0 голосов
/ 09 января 2020

$ comments на самом деле является коллекцией с элементом 0, поэтому empty () вернет false. Попробуйте:

@if(count($comments))
   ...
@endif
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...