Ich finde die Unterscheidung zwischen "Controller" und "Model" in Laravel 5.2 sehr verschwommen.Wie referenzieren Sie ein Modell in einem Laravel-Controller?
Ich benutze Handwerker, um einen RESTful Controller zu erstellen, und in der Speichermethode versuche ich, ein neues Objekt zu erstellen.
// store in the database
$car = new App\Models\CarModel;
Dann bekomme ich den Fehler wie folgt:
Class 'carfreak\Http\Controllers\App\Models\CarModel' not found
So ist es alles auf den Namespace des Controllers zu kommen scheint, aber ich verstehe es nicht.
Der Namensraum beschreibt den Controller, richtig? Also warum ist meine Referenz das Modell, auf dem Controller-Pfad gebaut? Es sollte nichts damit zu tun haben ... oder?
EDIT: Nach verschiedenen Vorschläge versuchen, habe ich geschlossen gibt es drei Dinge zu betrachten:
- Jede Klasse hat ein Namespace-Set, den Ordner korrekt zu beschreiben, wo die Klasse
- liegt in der Region Controller, haben die Anweisung "Use app \ models \ CarModel"
- beziehen sich auf das Modell in der Steuerung.
Jeder scheint korrekt zu sein, aber ich habe noch den Fehler, dass es nicht das Modell
getan, dass. Doesn; t ändern nichts – Maxcot
Was ist der Namespace Ihres Controllers? –
Namespace Carfreak \ Http \ Controller; – Maxcot