Usuario:ManuelRomero/micursos/Laravel/Configuracion
De WikiEducator
http://laraveles.com/docs/master/configuration
Ficheros de configuración
- Son varios ficheros que está ubicados en la carpeta config
- El nombre del cada fichero indica qué tipo de cofiguración realiza.
- La configuración de constantes se realiza en el fichero .env en la carpeta raíz del proyecto. Estas constantes se usarán en los ficheros de configuración.
- Ten en cuenta que git no sube los ficheros ocultos, por si te clonas un proyecto has de crear este fichero
- Siempre estará el fichero patrón env_example
)
- En el fichero .env se dan valores a constantes, su uso en los ficheros de configuración :
Uso de .env y los ficheros de configuracion |
---|
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=utilidades
DB_USERNAME=root
DB_PASSWORD=
'mysql' => [ 'driver' => 'mysql', 'url' => env('DATABASE_URL'), 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '3306'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), ..... ]] ;Siginificado del uso de la funcióln env() La variable host en el fichero de configuración valdrá lo que valga la constante DB_HOST en el fichero .env o bien (si no existiera dicho valor) 127.0.0.1 ;En el código podríamos acceder a los valores del fichero de configuración con la Facade App <source lang=php> use Illuminate\Support\Facades\App; $environment = App::environment(); |
Probar un proyecto creado
- Una vez instalado un proyecto podemos probarlo
- Para ello vamos a usar artisan una interfaz de línea de comandos que incorpora Laravel
- Con artisan vamos a poder especificar muchas acciones, así como consultar información de nuestro proyecto entre otras cosas
- Levantar el servidor
- Ponemos nuestro servidor web escuhando por el puerto 8000
php artisan serve
- Entonces escribimos en nuestra web
http://localhost:8000/
- Si quisiéramos acceder desde otro host (por ejemplo en el caso de que estemos en un docker), hay que especificarlo
php artisan serve --host 0.0.0.0 &
- El ampersan dejará el servidor en ejecución en segundo plano y podremos seguir operando con el terminal
- Y podemos ver nuestro proyecto, que aunque no hayamos escrito código, aparece una página
Configuración del proyecto
- El proyecto ya viene con una configuración por defecto (idioma, zona horaria, nombre de proyecto, ...)
- Existe un directoria en el directorio raíz del proyecto llamado config' donde tenemos varios ficheros que especifican diferentes configuraciones (bases de datos, correo, sesiones, ...)
- Según se necesitemos especificar distintas confuguraciones accederemos a estos ficheros como ya veremos posteriormente
Otras modificaciones
- Poner el proyecto en debug
Fichero config/app.php
Opcion
'debug' => env('APP_DEBUG', true)
- De esta forma, cuando haya un error, podremos ver qué información nos reporta el framework para intentar mitigarlo.
- No obstante esto es un cambio importante respecto a la versión 4.2 de Laravel
- Ahora estos valores pueden colgar de un fichero oculto llamado .env
- En este fichero podemos aportar valores a las variables de forma que cuando necesitemos o queramos otra configuración lo modificaremos dentro de ese fichero
- Esto permite que al ser un fichero oculto, no se suba a los repositorios de git
- En el mismo fichero se puede especificar el idioma o zona horario , y otros muchos conceptos que podremos modificar según las necesidades
- Otra modificación que se suele hacer es cambiar el namespace de nuestro proyecto que por defecto es App
- Para ello, podemos usar el comando de artisan, en este caso concreto
php artisan app:name Empresas
- En este caso este será el nombre de mi proyecto
- Es importante conocer el fichero .env, el cual contiene valores para diferentes parámetros que están en el fichero de configuración.
- Como vemos, el fichero de configuración, al asignar un valor a un parámetro, lo hace a partir de la función env. Por ejemplo tenemos en database.php esta línea
'host' => env('DB_HOST', '127.0.0.1'),
- La función env puede tener dos parámetros, de forma que va a ir a buscar el identificador que aparece como primer parámetro de la función, dentro del fichero .env. Si el parámetro está en el fichero .env y tiene valor, asigna dicho valor al parámetro, si no, le asignará el valor que tenga como segundo parámetro.