Ich versuche, Silex zusammen mit Doctrine ORM (nicht nur DBAL) zu verwenden, aber ich kann die Konfiguration nicht richtig machen.
composer.json
%Vor%bootstrap.php befindet sich in meinem Projektstammordner
%Vor%cli-config.php befindet sich auch im Stammordner
%Vor%Customer.php Entität in src / Entities
%Vor% Ich kann Befehle wie php vendor/bin/doctrine orm:schema-tool:create
ausführen und eine Tabelle namens customs erzeugen lassen, so wie sie sollte. Aber wie lade ich diese Entität in meine Silex-Anwendung
Hier ist meine index.php
%Vor%Das Ergebnis beim Laden des localhosts in meinem Browser
%Vor%UPDATE Ich bin mir nicht sicher, ob dies der richtige Weg ist, um dieses Problem zu lösen, aber mit dem folgenden Ansatz wurde das Problem gelöst und ich kann nun meine Entitäten in Silex verwenden
%Vor%Ich habe den Abhängigkeitsansatz verwendet, weil ich auf diese Weise $ app ['config'] verwenden kann, um DB-Informationen und andere umgebungsspezifische Konfigurationen zu speichern.
%Vor% Ich gehe davon aus, dass Ihre Doktrin Entity Mappings unter "/ src / Entities" im Namensraum \Entities
liegen. Mit Ihrer Autoloader-Direktive sollten sie als \Entities\MyMappingCls
erreichbar sein.
Ihr Problem scheint zu sein, dass Sie beim Abrufen des Repositorys nicht den fq-Namen der Mapping-Klasse angeben. Sie müssen eine Zeichenfolge eingeben, die vom Autoloader aufgelöst werden kann. Bitte versuchen Sie:
%Vor% Sie können auch versuchen, orm:generate-proxies
auszuführen, da sie nur im Debug-Modus im laufenden Betrieb erzeugt werden (nicht so sicher, ob dies relevant ist).
hth