Wie benutzt man Traits - Laravel 5.2
Ich bin neu auf Charakterzüge, aber ich habe eine Menge code, der wiederholt in meine Funktionen und ich möchten, verwenden Sie Eigenschaften, um den code weniger chaotisch. Ich habe eine Traits
Verzeichnis in meinem Http
Verzeichnis mit einer Eigenschaft namens BrandsTrait.php
. Und alles was es tut ist rufen alle Marken. Aber wenn ich versuche zu nennen, BrandsTrait in meinem Controller Produkte, wie dieses:
use App\Http\Traits\BrandsTrait;
class ProductsController extends Controller {
use BrandsTrait;
public function addProduct() {
//$brands = Brand::all();
$brands = $this->BrandsTrait();
return view('admin.product.add', compact('brands'));
}
}
es gibt mir eine Fehlermeldung Methode [BrandsTrait] ist nicht vorhanden. Bin ich wohl zu initialisieren etwas, oder nennen Sie es anders?
Hier ist mein BrandsTrait.php
<?php
namespace App\Http\Traits;
use App\Brand;
trait BrandsTrait {
public function brandsAll() {
//Get all the brands from the Brands Table.
Brand::all();
}
}
InformationsquelleAutor der Frage David | 2016-04-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Denken Sie an Merkmale wie definieren Sie einen Abschnitt Ihrer Klasse an einem anderen Ort, die geteilt werden können durch viele Klassen. Indem
use BrandsTrait
in Ihrer Klasse hat es, dass Abschnitt.Was Sie schreiben wollen, ist
Ist der name der Methode in Ihrem Zug.
Außerdem - vergessen Sie nicht, fügen Sie eine Rückkehr zu Ihrem
brandsAll
Methode!InformationsquelleAutor der Antwort Scopey
InformationsquelleAutor der Antwort Sonford Son Onyango