Как проверить MySQL таблицу NULL или НЕ с использованием IF & ELSE в Laravel 5.8? - PullRequest
0 голосов
/ 19 мая 2019

Как узнать, пуста ли таблица в базе данных в Laravel 5.8.

Я хочу использовать это выражение if else так, но оно не работает:

@foreach($accounts as $showaccounts)
@if($showaccounts->id == !NULL)
   <div class="list-item" data-id="item-11"><span class="w-40 avatar circle blue"> <img src="{{ $showaccounts->image }}" alt="."></span>
     <div class="list-body"><a href="app.message.php" class="item-title _500">{{ $showaccounts->username }}</a>
     </div>
   </div>
 @else
   <div class="no-result">
      <div class="p-4 text-center">No Results</div>
   </div>
@endif
@endforeach

И я попробовал другие функции, но они все еще не работали.

@if($showaccounts->id === NULL)

@if(is_null($showaccounts->id))

@if(empty($showaccounts->id))

Ответы [ 4 ]

0 голосов
/ 20 мая 2019

На самом деле, это то, что вы пытаетесь сделать:

@if($accounts->count())
  @foreach($accounts as $showaccounts)
   <div class="list-item" data-id="item-11"><span class="w-40 avatar circle blue"> <img src="{{ $showaccounts->image }}" alt="."></span>
     <div class="list-body"><a href="app.message.php" class="item-title _500">{{ $showaccounts->username }}</a>
     </div>
   </div> 
  @endforeach
@else
  <div class="no-result">
    <div class="p-4 text-center">No Results</div>
  </div>
@endif

Но было бы лучше, если бы вы построили это, как показано ниже:

@forelse($accounts as $account)
  <div class="list-item" data-id="item-11"><span class="w-40 avatar circle blue"> <img src="{{ $account->image }}" alt="."></span>
    <div class="list-body">
      <a href="app.message.php" class="item-title _500">{{ $account->username }}</a>
    </div>
  </div>
@empty
  <div class="no-result">
    <div class="p-4 text-center">No Results</div>
  </div>
@endforelse

Переменные цикла обычно принимают форму единственного числа, например: account-account.

0 голосов
/ 19 мая 2019

Использовать isset https://www.php.net/manual/en/function.isset.php или вы можете использовать isEmpty () для коллекций в laravel.

Так что в вашем случае @if (isset ($ account)) { что это делать, если переменная установлена ​​делать то, что вам нужно }

или ($ accounts-> IsEmpty ()) isEmpty проверяет, является ли коллекция пустой

Надеюсь, это поможет.

0 голосов
/ 20 мая 2019

попробуйте

@forelse ($accounts as $showaccounts)
<div class="list-item" data-id="item-11"><span class="w-40 avatar circle 
 blue"> <img src="{{ $showaccounts->image }}" alt="."></span>
 <div class="list-body"><a href="app.message.php" class="item-title _500">{{ 
 $showaccounts->username }}</a>
 </div>
 </div>
@empty
<div class="no-result">
    <div class="p-4 text-center">No Results</div>
</div>
@endforelse
0 голосов
/ 19 мая 2019

в вашем коде вы проверили свойство элемента.но вы хотели проверить таблицу.Итак, вы можете просто попытаться получить количество элементов коллекции

@if( $showaccounts->count() )
    @foreach($accounts as $showaccounts)
        <div class="list-item" data-id="item-11"><span class="w-40 avatar circle blue"> <img src="{{ $showaccounts->image }}" alt="."></span>
            <div class="list-body"><a href="app.message.php" class="item-title _500">{{ $showaccounts->username }}</a>
            </div>
        </div>
    @endforeach
@else
    <div class="no-result">
        <div class="p-4 text-center">No Results</div>
    </div>
@endif
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...