Wie PHP-Konsole in Symfony2 verwenden
-
05-10-2019 - |
Frage
fand ich die Konsole und führen Sie es wie folgt aus:
root@valugi-laptop:/var/www/sandbox/hello# php console
Symfony version 2.0.0-DEV - hello
Usage:
Symfony [options] command [arguments]
Options:
--help -h Display this help message.
--quiet -q Do not output any message.
--verbose -v Increase verbosity of messages.
--version -V Display this program version.
--color -c Force ANSI color output.
--no-interaction -n Do not ask any interactive question.
--shell -s Launch the shell.
Available commands:
help Displays help for a command (?)
list Lists commands
assets
:install
bundle
:pharize
container
:graphviz
doctrine
:generate-proxies
init
:application
:bundle
router
:debug Displays current routes for an application
:dump-apache
Aber ich kann keine dieser Befehle ausführen. Ich versuche, wie folgt aus:
PHP-Konsole Symfony -h
Aber ich bekomme
[InvalidArgumentException]
Command "Symfony" is not defined.
Irgendwelche Vorschläge?
Lösung 3
Finden mir eine Antwort.
root@valugi-laptop:/var/www/sandbox/hello# chmod 777 /var/www/sandbox/src/Bundle
root@valugi-laptop:/var/www/sandbox/hello# php console init:bundle "Bundle\\ValugiBundle"
Andere Tipps
Console wie folgt verwendet: $ php app/console [command name]
Von app root: ./app/console --shell
Mit dem folgenden ein neues Symfony2 Bündel zu erstellen:
php app/console init:bundle Acme\\DemoBundle src
Das wird ein neues Bündel in src mit dieser Verzeichnisstruktur erstellen:
src/Acme/DemoBundle/
AcmeDemoBundle.php
Controller/
DefaultController.php
Resources/
config/
routing.yml
views/
Default/
index.html.twig
und der Namespace wird Acme\DemoBundle
.
Ich habe zusammen ein Bash-Skript Hilfe bei diesem, indem das CLI-Tool, leicht von überall in Ihrem Projekt. Laden Sie es, machen es ausführbar und legen Sie sie in Ihrer PATH (/ usr / local / bin / zum Beispiel).
Dann brauchen Sie nicht in der Wurzel Ihres Projektes zu sein, das CLI-Tool zu erreichen. Feuer einfach weg sf <command>
. Es funktioniert sowohl für Symfony 1.3 / 1.4 und Symfony2.
Ich habe versucht, vote down Sie Ihre eigene Antwort, aber ich habe nicht genug rep for it!
-
Sergi und ok beantwortet Ihnen genau, aber ich werde für den Fall, jemand erweitern Lektüre dieses verwirrt ist, wie Sie sind.
Sie tought Sie benötigt „php Konsole Symfony“ verwenden, da Sie Ordnernamen einfach auf sich selbst machen dont.
Ich arbeite gerne von meinem Home-Ordner. Ich fange immer da, wenn ich mich einlogge, damit ich mich um einen Ordner in meinem Hause wie zu erstellen:
~/web/sandbox.sf2
dann könnte man symbolische Links verwenden, um / var / www wie:
sudo ln -s ~/web/sandbox.sf2/home/myusername/web/sandbox.sf2
Wenn Sie also auf Ihre Dateien arbeiten, werden Sie wissen Sie bereits in einem Symfony2 Projekt sind. (Und ich tought auch es seltsam war es so, dass die Verwendung auf dem ersten, aber ich gewöhnte, um es, und Tobias gleiche Art von Antwort verwendet, ein ist Skript app / console als SF2 init wickeln: Bündel und sf Liste zum Beispiel)
Sie offensichtlich Benutzerberechtigungsprobleme auch haben ( http://google.com/search?q= linux + Berechtigungen , zweites Ergebnis sieht gut aus).
Stellen Sie sicher, dass Sie als Benutzer / Gruppen können Ihre Dateien und Ordner bearbeiten. PHP-app / Konsole wird als Benutzer Sie (root in diesem Fall) verwendet. Auch sicherstellen, dass der Apache-Benutzer / Gruppen Ihre Dateien lesen können.
-
Und bitte, tun sie nicht verwenden root chmod 777 -R, wenn etwas nicht funktioniert. Test einfaches Eigentum Erlaubnis, sein einfache und ein notwendige Konzept, wenn Sie einen Web-Server auf das World Wide Web aussetzen.