Forelse funktioniert in Laravel nicht richtig?


irham dollah

Meine Laravel-Version ist 5.4.36. Ich möchte verwenden forelse, um eine Nachricht anzuzeigen, wenn die Bedingung nicht erfüllt ist.

@forelse ($items as $item)
   <p>
     @if ($item->quantity<$item->minimum_no)
        <span class="label label-danger">Item {{$item->name}} need to be ordered now ! </span>
     @elseif($item->quantity<($item->minimum_no+10))
        <span class="label label-warning">Item {{$item->name}} is low !</span>
     @endif
   </p>
@empty
   <p>No message</p>
@endforelse

Die Meldung wird jedoch nur angezeigt, wenn die Bedingung erfüllt ist. Wenn es ist @empty, wird nichts angezeigt.

Hamida

@forelseverhält sich genau wie @foreachbei einem diff, der ein @emptyBefehl ist, der funktioniert, wenn Ihr Array
im folgenden Beispiel $usersleer war, wenn er leer war, no userswird dann platziert:

@forelse ($users as $user)
    <li>{{ $user->name }}</li>
@empty
    <p>No users</p>
@endforelse

Wenn in Ihrem Code $itemleer ist, <p>No message</p>wird es platziert und wenn es ein oder mehrere Elemente enthält if..else..., funktioniert es

UPDATE hängt von Ihrem Zustand ab, wenn es sich bei Ihrem Zustand um Artikel, aber nicht um Artikel handelt, daher benötigen Sie eine zusätzliche Variable, um sie am Ende zu überprüfen oder so ähnlich:

<?php $elseMsg='<p>No message</p>';?>
@foreach ($items as $item)
   <p>
     @if ($item->quantity<$item->minimum_no)
        <?php $elseMsg='';?>
        <span class="label label-danger">Item {{$item->name}} need to be ordered now ! </span>
     @elseif($item->quantity<($item->minimum_no+10))
        <?php $elseMsg='';?>
        <span class="label label-warning">Item {{$item->name}} is low !</span>
     @endif
   </p>
@endforelse
{{$elseMsg}}

Verwandte Artikel


Laravel route () funktioniert nicht richtig

Sanjay Ich erstelle eine cms-Anwendung, die nur Benutzer registriert und in der Benutzer Beiträge erstellen können. Das Problem ist in route(). Beim Definieren eines route()Hyperlinks in Blade-HTML funktioniert dies nicht. Route: Route::resource('/admin/users'

laravel firstOrCreate funktioniert nicht richtig?

Stephan-v Ich importiere einige Daten mit der foursquare-API. Meine Datenbank enthält mehrere Duplikate von foursquare_id. Mache ich hier etwas falsch mit dem Code? Ich dachte, die Art und Weise, wie dies eingerichtet ist, überprüft die Datenbank auf den Spalt

Middleware in Laravel funktioniert nicht richtig

Aman Sharma | Ich versuche, Middleware auf meinen Routen wie folgt anzuwenden: Route::get('twitterlogin','TwitterController@gettwitterlogin'); Route::post('twitterlogin','TwitterController@posttwitterlogin'); Route::group(['middleware'=>'auth'],function()

Suchabfrage funktioniert in Laravel nicht richtig

Shiva Ganesh public static function searchSubmissions($request, $candidateIds = array(),$isscontact = NULL){ $querys = DB::table('submissions')->select('submissions.*'); if ( Input::has('candidatename') and $request->input('candidatename') != NULL){

onDelete () funktioniert in Laravel nicht richtig

Dhruv Koshiyar Ich habe nach diesem Problem gesucht und eine Lösung gefunden, die nur die Speicher-Engine ändern = InnoDB, aber die Zeile meines nachfolgenden Kindes wird immer noch nicht gelöscht. Meine Modellhierarchie ist .... Board -> Task -> Card -> [comm

finde nicht richtig in Laravel funktioniert

Maria Almudena Garcia Fraile F. Ich habe hier ein leichtes Problem, aber ich stecke hier am Geldautomaten fest. Ich kann nicht verstehen, warum ein einfaches Model::find($id)nicht funktioniert. Ich habe eine neue Bewerbung. Ich habe überprüft, ob die Anwendung

Laravel Collection funktioniert nicht richtig

user3142452 Ich habe ein Problem mit meiner Sammlung $tasks = Bear::all(); $val = new Collection([]); foreach($tasks as $tas){ $val ->push($tas->id); } $tasks1 = BearPic::whereIn('bear_id',$val)->get(); $val2 = new Collection([]); foreach($tasks1

Zählung funktioniert nicht richtig. Laravel

Anon Ich versuche, die Anzahl der an meine Formulare angehängten Dateien zu zählen. Nachfolgend mein HTML-Code. <label class="control-label">Select Images</label> <input id="image" name="image[]" multiple type="file"> Ich habe folgendes zum Zählen verwendet.

Laravel whereNotNull-Anweisung funktioniert nicht richtig

user10753862 Ich rufe Daten aus der Datenbank ab und versuche dabei, Nullzeilen zu entfernen. public function search(Request $request) { $q = $request->q; $estates = \DB::table('allestates') ->whereNotNull('lat') ->whereNotNull('lng')