Sie sind auf Seite 1von 22

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa 1- ENRUTADO: para saber enrutar, hay que

tener en cuenta, que todas las rutas deben estar en el archivo routes.php. aqu puedes especificar una ruta de la siguiente manera:

Dnde: Primer parmetro: nombre de la ruta. Segundo parmetro: una funcin annima que devuelva algo (una vista, una cadena, etc.). NOTA: tener en cuenta que las rutas pueden ser GET, POST o ANY. Tambin puedes llamar a una ruta de esta forma:

Una ruta tambin puede tener parmetros. Por ejemplo:

Otro ejemplo, para el caso que la ruta tenga un parmetro establecido en caso que no se asigne parmetro:

Se puede devolver una vista en una ruta, ejemplo:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa

Le podemos tambin pasar parmetros a una vista, ejemplo:

Se mostrara en la vista, algo como esto:

En una ruta tambin se puede redireccionar a otra ruta, ejemplo:

Tambin se pueden devolver respuestas en formato JSON:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa

En una ruta, tambin puedes generar una respuesta de descarga. Como por ejemplo:

2- FILTROS: un filtro no es ms que una lgica interna que te permite validar acciones antes de registrar a la ruta. Los filtros los haces desde filters.php. vamos a ver un filtro muy bsico:

Ahora, puedes aadir un filtro a la ruta. Este es un ejemplo muy prctico:

Primer parmetro: nombre de la ruta. Segundo parmetro: array que contiene en su primer parmetro el before con valor del nombre del filtro que especificamos, y el segundo parmetro, la funcin annima que hace la ruta si pasa el filtro. No obstante, se pueden hacer filtros mltiples, ejemplo:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa

Los filtros mltiples, se pueden tambin nombrar por un array:

Un filtro tambin puede tener parmetros, por ejemplo:

Donde routa y peticin son parmetros estndar en el filtro, y los opcionales definidos por el usuario inician a partir del 3 parmetro, ejemplo:

El ejemplo del filtro con parmetro fecha, se implementa as:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa

El segundo filtro con 3 parmetros se implementara as:

Tambin podemos asociar un filtro a todas aquellas rutas que comiencen con determinado elemento. Por ejemplo, miraremos un filtro aplicado a todas las rutas que comiencen por perfil:

3- CONTROLADORES: los controladores son un medio de interaccin entre las vistas y los procesos. Cada controlador es una clase que debe heredar de basecontroller. Veamos un ejemplo:

En las rutas, se puede anidar una ruta a una funcin especfica de un controlador. Ejemplo:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa 4- PLANTILLAS BLADE: laravel usa plantillas blade para simplificar llamados entre vistas y simplificar cdigo php. Veamos cmo se reduce el echo de php a travs de las plantillas blade:

Por cada llave nos ahorramos los echo de php y las etiquetas. Asi mismo, nos ahorramos el punto y coma al final. Para cdigos javascript se puede hacer esto:

Blade permite anidar estructuras condicionales. Ejemplo:

Tambin se puede la estructura foreach:

Adems, la estructura for y while quedan de maravilla:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa

No obstante, hay una funcin adicional llamada unless, que permite evaluar una condicin si es falsa. Es lo contrario del if. Ejemplo:

En las plantillas blade, puedes incluir ciertas partes de un documento html de otra vista. Veamos un ejemplo:

En las blade, tambin existe la herencia de plantillas. Veamos un ejemplo:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa

En el ejemplo anterior tenemos 2 tipos de variables: @section y @show: Cuando una seccin se comporte de esta manera, el cdigo html entre estas 2 etiquetas permanece ah en esa vista, siempre y cuando no se sobreescriba en la plantilla hija. @yield: este campo, corresponde al campo creado en la plantilla hija. Debe tener exactamente el mismo nombre como aparece en la plantilla hija. En la plantilla hija, este campo no es con @yield, sino que se crea el campo con @section y @stop para terminar el contenido en esa seccin. @extends: esta funcin dice que inicio.blade hereda de base.blade. esto quiere decir que al llamar a inicio.blade en la vista, mostrara el contenido de base, con el contenido embebido de inicio. Tener en cuenta que los separadores / en laravel se simbolizan con el punto (.).

Las plantillas blade, se llaman igual que una plantilla normal:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa

Si se quiere cambiar el contenido entre @section y @show, simplemente se sobreescribe el @section en la plantilla hija con la informacin necesaria. Ahora, si lo que queremos es dejar quieto lo que estaba entre esas 2 etiquetas, y agregar algo mas, simplemente hacemos esto en la plantilla hija:

En blade, los comentarios se hacen de la siguiente forma:

5- RUTAS AVANZADAS: en laravel puedes darle un nombre o alias a una ruta muy larga. La sintaxis es de la siguiente manera:

Si la quisiramos mostrar en una vista, seria:

Lo bueno del alias de una ruta, es que se har ms fcil la redireccin:

Tambin podemos enlazar una ruta con alias, a la accin de un controlador:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa

Podemos crear rutas con protocolo HTTPS. Un ejemplo:

Recuerdas las rutas con parmetros? Bueno, ahora a esos parmetros puedes asignarle expresiones regulares para limitar al usuario:

En los filtros a varias rutas vistas anteriormente, existe una mejor manera de hacer un filtro a varias rutas, solamente con un nmero limitado de casos (los que queramos):

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa

Tambin puedes crear un grupo de rutas para un prefijo a todas:

Con esta opcin, podemos evitarnos crear rutas para:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa

6- URLS: en laravel existen muchas formas de mostrar las URL. Miremos las diferentes formas: Obtener la URL actual:

Obtener la URL actual adicionando parmetros de GET:

Obtener la URL de la anterior peticin:

Obtener la URL de una ruta x:

El primer parmetro de esta funcin es el nombre de la ruta. Obtener la URL de una ruta x con parmetros:

Se vera de la siguiente manera:

Lo anterior tambin puede ser usado con el protocolo HTTPS:

Con parmetros o sin parmetros, tambin existe otra forma de obtener URLS de rutas con protocolo HTTPS:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa

Obtener una URL de una ruta con Alias:

En caso de que la ruta con alias tenga parmetros, se puede obtener la URL as:

Obtener la URL de una ruta que accede a un controlador:

En caso de que la funcin del controlador tenga parmetros, la URL se obtiene as:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa Obtener la URL de algn recurso (css, javascript, imgenes, etc): se debe tener en cuenta, que todos estos recursos deben estar en la carpeta public del proyecto. La URL se obtiene asi:

Si queremos obtener el recurso con el protocolo HTTPS, seria:

ATAJOS DE LAS ANTERIORES RUTAS URL:TO: existe una forma ms fcil de escribir esta funcin:

Del mismo modo, pero en HTTPS:

URL::route: hay una forma ms fcil de escribir esta funcin:

URL::action: existe una forma ms fcil de escribir esta funcin, con o sin parmetros:

URL::asset: Existe una forma ms fcil de escribirla:

Lo anterior se puede tambin utilizando el protocolo HTTPS:

7- DATOS DE PETICIONES: en laravel, hay muchas formas de acceder a los datos de peticiones GET o POST: Obtener todos los datos de la peticin dada (sean GET o POST):

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa Obtener un parmetro exacto de la peticin:

Saber si un dato de la peticin existe en la matriz de datos o no:

Obtener la matriz solo de los parmetros de peticin que le especifiquemos:

Tambin se puede escribir:

Obtener los datos de peticin excepto los que el usuario especifique:

Tambin se puede escribir de esta forma:

Hay que tener en cuenta, que los datos solo pueden transferirse en una sola peticin. Si queremos guardar los datos para una siguiente peticin, realizamos:

El input::old se comporta igual que el input::get. Puede aceptar parmetros y la sintaxis es la misma. Al igual que lo anterior, tambin se presentan condiciones de only y except:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa

Existe otra forma de pasar datos de peticiones a una siguiente peticin:

Al igual que la anterior, tambin puedes pasar solo unos parmetros:

Para obtener los datos de peticin de un archivo enviado por POST, accedemos a el asi:

El primer parmetro corresponde al name del campo en el formulario. De un dato de peticin correspondiente a un archivo subido, se pueden obtener mas funciones: Obtener el nombre temporal de un archivo:

Obtener el nombre original del archivo subido:

Obtener el tamao del archivo en bytes:

Obtener el tipo de archivo:

Obtener la extensin del archivo:

Obtener la ruta temporal del fichero subido:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa

Mover un archivo de su ruta temporal al servidor:

Mover un archivo de su ruta temporal al servidor, cambiando el nombre del archivo:

8- COOKIES: para crear una cookie, se considera de la siguiente forma:

Primer parmetro: nombre o id. De la cookie. Segundo parmetro: valor de la cookie. Tercer parmetro: tiempo de actividad en minutos.

Se puede pasar una cookie a una ruta, de la siguiente forma:

Para acceder al dato de una cookie, lo hacemos as:

Para saber si una cookie existe, implementamos algo as:

Para crear una cookie que no expire nunca, lo hacemos as:

Para borrar o hacer expirar una cookie, realizamos lo siguiente:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa 9- FORMULARIOS: para los formularios existen muchas funciones: Para abrir un nuevo formulario HTML:

Para formularios que suban archivos, debemos activarle la codificacin apropiada para subida de archivos. Esto en laravel se realiza de la siguiente forma:

Para hacer referencia a una ruta nombrada en un formulario, se hace as:

Para hacer referencia a una accin del controlador en un formulario, se procede:

Vamos ahora a especificar cada uno de los campos de un formulario en laravel: LABEL:

Primer parmetro: atributo for. Segundo parmetro: texto del label. Tercer parmetro: array en que podemos incluir atributos adicionales, como id, class, etc.

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa INPUT TEXT:

Primer parmetro: atributo name. Segundo parmetro: texto de la caja de texto. Tercer parmetro: array en que podemos incluir atributos adicionales, como id, class, etc. TEXTAREA:

Los parmetros son iguales que en el campo input text.

INPUT PASSWORD:

Primer parmetro: atributo name.

INPUT CHECKBOX:

Primer parmetro: name del input. Segundo parmetro: value del input. Tercer parmetro: se especifica si el input esta ckeckeado por defecto o no.

INPUT RADIO:

Primer parmetro: name del radio. Segundo parmetro: value del radio. Tercer parmetro: especifica si el radio esta checkeado por defecto o no.

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa SELECT:

Primer parmetro: name del select. Segundo parmetro: matriz de elementos value y text del <option>. Tercer parmetro (opcional): indica el <option> que estar seleccionado por defecto.

SELECT CON OPTGROUP:

La nica variacin de esto, con el anterior, es que el array especifica una matriz de categoras. Cada categora tiene otro array con las claves value y text del option.

INPUT EMAIL:

Los parmetros son los mismos que para el input text.

INPUT FILE:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa INPUT HIDDEN:

INPUT SUBMIT:

INPUT BUTTON, BUTTON:

INPUT IMAGE:

INPUT RESET:

10- VALIDACIONES Y REGLAS: una vez hayamos obtenido los datos de la peticin post, debemos asegurarnos que esos datos sean validados. Entonces, se procede:

Las reglas de validacin se construyen sobre un array que tiene como ndice el nombre del campo que se valida y como valor, la regla o reglas que se apliquen. En el caso en que varias reglas se apliquen, van separadas por una pleca (|) o por un array. Para validar la regla, utilizamos:

Para efectuar la validacin de reglas tenemos 2 funciones:

RESUMEN DE CONCEPTOS Y FUNCIONES DE LARAVEL Vctor Barrios lvarez Universidad de la Costa

La anterior funcin dice si la validacin pasa correctamente.

La anterior funcin nos dice si la validacin fall.

11- TIPOS DE VALIDACIONES: