Ich bin ein bisschen verwirrt bei der Arbeit View Composer in Laravel und ich dachte, ich könnte einen Rat fragen.Laravel 5.3 View Composer - Ändern von Daten aus dem Controller zur Ansicht
Zum Beispiel hat meine Website Pläne, in Plänen Tabelle habe ich die übliche ID etc etc, aber ich habe auch 'space_allowed', die meine eine Zahl vertreten ist, habe ich 'unbegrenzt' als NULL dargestellt, so dass ich nicht muss ändere eine meiner (Anzahl) Funktionalitäten.
in meinem Controller Also, habe ich so etwas wie diese
$plans = Plan::where('is_active', 1)->get();
return view('pricing', ['plans' => $plans]);
Nun, wenn im in der Ansicht nur ich über die Pläne @foreach und die Details ausspucken.
ABER, da im 'unbegrenzten' Raum als NULL zu speichern, spiegelt die Ansicht das wieder.
Also ich denke, dass, da es sich auf die ganze Website bezieht, es eine gute Idee wäre, zu überprüfen, ob der Wert null ist, und wenn es ist, gibt 'unlimited' zurück, und wenn der Wert nicht null ist, dann spuck es einfach wie an einem Ort aus.
Daher die Idee für den View-Composer.
So habe ich die ComposerServiceProvider.php erstellt, hinzugefügt, um das Boot und Methoden registrieren und innerhalb des Boot-Methode i folgendes haben:
View::composer('*', function ($view) {
});
So denke ich fast dort im.
Aber im verloren, wie man den Code zu implementieren, die in diesem Verschluss geht zu überprüfen, ob die storage_allowed
Jede Hilfe wäre null ist sehr zu schätzen.
Ihr sehr gut, ich denke, das könnte meine beste Option sein ... Vielen Dank für das :) – BigJobbies
@BigJobbies Als Alternative Sie eine 'getSpaceNiceAttribute könnte hinzufügen() 'Funktion auf Ihrem Plan, der die if-Anweisung enthält und dann verwenden Sie einfach $ plan-> space_nice', um den Wert in Ihren Vorlagen zu erhalten? – Hailwood
@Hailwood - Das ist auch eine gute Idee, wenn Sie "auf Ihrem Plan" sagen, meinen Sie in der Plan-Modell-Datei? Gibt es eine Chance, dass du mir ein Beispiel geben kannst? – BigJobbies