Está en la página 1de 4

Captulo 2: Estructura de un Proyecto Laravel 4

@jlinformatico
Hola de nuevo, si es tu primera vez aqu te recomiendo ver nuestro captulo 1 donde se
se hizo la confguracin del entorno local e instalamos composer para generar nuestro
primer proyecto en Laravel 4. En el siguiente post
http!!"log.devacademy.la!post!#4$%&'%('(1!tutorial)laravel)instalacion)de)laravel)4)y
, no olvides e*ecutar composer install so"re el proyecto +resco si lo clonaste desde
githu".
En el presente captulo pretendo a"ordar so"re la estructura de directorios del paquete
de nuestro proyecto devacademy-laravel, emocionad,-.., comenzemos.
Estructura del directorio raz
Directorio Ra
app
Lo primero que tenemos es el directorio app. /pp por de+ecto alo*a a todo el cdigo
personal de tu proyecto. Eso incluye clases que puedan o+recer +uncionalidad a la
aplicacin, archivos de confguracin y m0s. Es la carpeta mas importante que
cu"riremos en detalle al fnal de esta seccin.
bootstrap
El directorio "ootstrap contiene archivos que est0n relacionados con los procedimientos
de inicializacin del +rame1or2, recomenda"le no modifcarlos por ahora.
autoload!p"p: contiene la mayora de esos procedimientos y solo de"era ser
editado por usuarios e3perimentados de Laravel .
pat"s!p"p: contiene una matriz de las rutas comunes del sistema que son usadas
por el +rame1or2. 4i por alg5n motivo decides alterar la estructura de directorios
del +rame1or2, tendr0s que alterar los contenidos de este archivo para re6e*ar tus
cam"ios
start!p"p: contiene m0s procedimientos de inicializacin para el +rame1or2 ,
donde se puede esta"lecer los entornos 7enviroments8 del +rame1or2, lo
cu"riremos m0s adelante.
vendor
El directorio vendor contiene todos los paquetes de 9omposer que son utilizados por tu
aplicacin. :or supuesto, esto incluye el paquete del +rame1or2 de Laravel .
public
;eneralmente el directorio pu"lic es la 5nica entrada de una aplicacin Laravel, donde se
encuentran tus archivos 944, <ava4cript e im0genes.
pac#a$es%: ser0 usado para contener cualquier fchero que necesite ser instalado
por paquetes de terceras partes. 4e mantienen en un directorio separado para
que no creen con6ictos con los fcheros de nuestra propia aplicacin.
!"taccess para servidores /pache. 9ontiene algunas directivas de confguracin
est0ndar, si usas un servidor 1e" alternativo como =gin3 puedes ignorar o "orrar
este archivo.
favicon!ico es una imagen de 1%31%p3 que se muestra en las pesta>as de tu
navegador, por de+ecto est0 en "lanco para ser reemplazado m0s tade si se desea.
inde&!p"p es el controlador +rontal del +rame1or2 de Laravel. Es el primer archivo
que el servidor 1e" e*ecuta cuando llega una peticin del navegador.
ro'ots!t&t permite todos los hosts por de+ecto, es por tu "ien, puedes modifcarlo
como creas necesario.
artisan
El archivo artisan es un e*ecuta"le que es usado para e*ecutar la inter+az de lnea de
comandos /rtisan para Laravel. /rtisan contiene un "uen n5mero de comandos 5tiles
para o+recer ata*os o +uncionalidad adicional al +rame1or2. 9u"riremos estos comandos
en detalles en un captulo posterior.
:or ahora les de*o un resumen de los comandos /rtisan
http!!cheats.*esse)o"rien.ca!
composer.json y composer.lock
?anto composer.*son como composer.loc2, contienen in+ormacin so"re los paquetes de
9omposer usados por este proyecto.
phpunit.xml
El archivo phpunit.3ml o+rece confguracin por de+ecto para las prue"as unitarias de
:H:@nit.
;estionar0 la carga de dependencias de 9omposer y e*ecutar0 cualquier prue"a u"icada
en la carpeta app!tests. Aevelaremos in+ormacin so"re las prue"as en Laravel en un
captulo m0s adelante., Bpermanece atento.
server.php
=o lo toques... requiere de m0s investigacin, es para usuarios e3perimentados en
Laravel.
El directorio de la aplicaci(n %app
Llegamos a la seccin fnal, a"ordaremos el directorio mas importante en el cual pasar0s
la mayor parte de tu tiempo. Es importante que conoscas la distri"ucin.
Estructura del directorio de la aplicacin 7app8
commands
Este directorio contiene cualquier comando personalizado de /rtisan que pueda
necesitar tu aplicacin. 9omo ver0s, /rtisan no solo o+rece +uncionalidad por de+ecto
para ayudarte a construir tu proyecto, si no que tam"iCn te o+rece la oportunidad de
crear tus propios comandos para hacer cosas.
confg
La confguracin tanto para el +rame1or2 como para tu aplicacin se mantiene en este
directorio. La confguracin de Laravel e3iste como un con*unto de archivos :H: que
contienen matrices clave)valor. Este directorio tam"iCn contiene su")directorios que
permiten distintas confguraciones cargadas en di+erentes entornos .
controllers
9omo el nom"re sugiere, este directorio contendr0 tus controladores. Los controladores
pueden ser usados para +acilitar lgica a la aplicacin, y hacer de pegamento entre las
partes separadas de tu aplicacin. Este directorio ha sido a>adido al archivo
composer.*son por de+ecto para la auto carga de clases .
database
4i escoges una "ase de datos como mCtodo para guardar cosas a largo plazo, este
directorio ser0 usado para contener los archivos que crear0n el esquema de tu "ase de
datos, y los mCtodos para completarla con datos de e*emplo. La "ase de datos por
de+ecto en 4DLite tam"iCn est0 u"icada en este directorio .
lang
El directorio lang contiene archivos :H: con matrices de cadenas que pueden ser usados
para dar soporte de traduccin a tu aplicacin. 4e pueden crear su" carpetas por regin
para que tengas distintos fcheros para m5ltiples idiomas.
models
Este directorio contendr0 tus modelos. E4orprendido- Los modelos son usados para
representar el modelo de negocio o +acilitar interaccin con el almacenamiento.
E9on+undido- =o te preocupes, cu"riremos los modelos con m0s detalle en un captulo
posterior. Fe"es sa"er que hay un modelo @ser para o+recerte autenticacin en la
aplicacin por de+ecto. /l igual que el directorio controllers, este ha sido a>adido a la
seccin de carga autom0tica del archivo composer.*son por de+ecto.
start
Gientras que el directorio "ootstrap contiene los procedimientos de arranque que
pertenecen al +rame1or2, el directorio start contiene procedimientos de arranque que
pertenecen a tu aplicacin. 9omo siempre, se o+recen algunos por de+ecto .
storage
9uando Laravel necesita escri"ir algo en el disco, lo hace en el directorio storage. :or
este motivo tu servidor 1e" de"e poder escri"ir en esta u"icacin 7si estas en gnu!linu3
hay que darle permisos de escritura y lectura8.
tests
El directorio tests contiene todas las prue"as unitarias y de aceptacin para tu
aplicacin. La confguracin por de+ecto de :H:@nit que ha sido incluida por Laravel
"uscar0 prue"as en este directorio por de+ecto .
views
El directorio vie1s es usado para contener las plantillas visuales de tu aplicacin. 4e
+acilita una vista hello por de+ecto para tu conveniencia .
flters.php
El archivo flters.php es usado para contener cualquier fltro de rutas de tu aplicacin.
Fescu"rir0s m0s so"re los fltros en un captulo +uturo .
routes.php
El archivo routes contiene todas las rutas de tu aplicacin. E=o sa"es lo que son las
rutas-
En nuestro pr3imo captulo veremos so"re el Auteo "0sico en Laravel 4. =o olviden
revisar el captulo anterior para tener instalado y corriendo su primer proyecto Laravel.
Hy ,*lin+ormatico.

También podría gustarte