Cómo utilizar la consola php en Symfony2
-
05-10-2019 - |
Pregunta
He encontrado la consola y ejecutarlo como esto:
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
Pero no se puede ejecutar cualquiera de estos comandos. Estoy tratando de esta manera:
consola de PHP Symfony -h
Pero consigo
[InvalidArgumentException]
Command "Symfony" is not defined.
¿Alguna sugerencia?
Solución 3
Para mí una respuesta.
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"
Otros consejos
consola se utiliza como esto: $ php app/console [command name]
A partir de la raíz aplicación: ./app/console --shell
Utilice el siguiente para crear un nuevo paquete de Symfony2:
php app/console init:bundle Acme\\DemoBundle src
Esto creará un nuevo paquete en src con esta estructura de directorios:
src/Acme/DemoBundle/
AcmeDemoBundle.php
Controller/
DefaultController.php
Resources/
config/
routing.yml
views/
Default/
index.html.twig
y el espacio de nombres será Acme\DemoBundle
.
una fiesta de la escritura para ayudar con esto al permitir la herramienta CLI para ser de fácil acceso desde cualquier punto de su proyecto. Descargarlo, hacerlo ejecutable y lo puso en su PATH (/ usr / local / bin locales / por ejemplo).
A continuación, usted no necesita estar en la raíz de su proyecto para llegar a la herramienta CLI. Sólo el fuego inmediato sf <command>
. Funciona tanto para Symfony 1.3 / 1.4 y Symfony2.
Me tratado de voto abajo de su propia respuesta, pero no tengo representante suficiente para él!
-
Sergi y bien que responde con precisión, pero voy a ampliar en caso de cualquiera que lea esto se confunde como eres.
enseñó que tenía que utilizar "consola de PHP Symfony" porque no hacen los nombres de las carpetas más fácil para ti.
Me gusta trabajar de mi carpeta de inicio. Siempre comienzo allí cuando intento acceder así que creo a mí mismo una carpeta en mi casa como:
~/web/sandbox.sf2
A continuación, podría utilizar enlaces simbólicos en / var / www como:
sudo ln -s ~/web/sandbox.sf2/home/myusername/web/sandbox.sf2
Así que cuando usted trabaja en sus archivos, usted sabrá que usted está ya en un proyecto Symfony2. (Y me listada también que era raro para usarlo como eso al principio, pero me acostumbré a ella, y se utiliza Tobias mismo tipo de respuesta, un script bin para envolver app / consola init SF2: paquete y la lista sf por ejemplo)
Es obvio que también tiene problemas de permisos de usuario ( http://google.com/search?q= Linux permisos + , segundo resultado se ve bien).
Asegúrese de que un usuario / grupo puede editar sus archivos y carpetas. php app / ejecuta la consola como el usuario que utilizó (raíz en este caso). También asegúrese de que el usuario apache / grupo puede leer sus archivos.
-
Y por favor, no haga uso de la cuenta root para chmod 777 -R cuando algo no está funcionando. Prueba de permiso de la propiedad sencilla, su fácil y un concepto necesario si usted está exponiendo un servidor web para la World Wide Web.