Cargando



Backbone.js - Persistencia Restful

En este tutorial veremos a detalle cómo trabaja Backbone.js con los servicios Rest.


may 10 2014 20:50
Profesional
may 12 2014 11:04
Un servicio Rest nos permite enviar y recibir información a través de una URL donde reside el recurso, sin embargo diferenciamos las diferentes acciones que requerimos utilizando los 4 métodos del HTTP como los son POST, GET, PUT y DELETE.

En las aplicaciones de una sola página vamos a hacer uso de este tipo de servicios ya que es lo que nos permitirá manipular datos desde una fuente a través de diferentes peticiones, cuando hablamos de este tipo de aplicaciones Backbone.js nos simplifica mucho el trabajo y terminamos escribiendo menos código que si estuviésemos utilizando alguna otra solución.

Obteniendo Modelos del Servidor

Cuando hablamos de modelos, usualmente estos los vamos a obtener de una fuente o repositorio persistente que es el que se encargará de almacenar los datos en una base de datos relacional y con ello la próxima vez que los necesitemos los tendremos disponibles.

Facilidad
Para facilitarnos la vida Backbone.js cuenta con un método fetch que utiliza el método GET para solicitar información de un recurso en alguna URL que le indiquemos, con ello obtendrá los modelos que deben venir en formato JSON.


Una vez obtenidos los modelos automáticamente se realiza un método set() que se encargará de crear la colección correspondiente de nuestros nuevos modelos.

En la siguiente imagen veremos un código que nos permite poner en práctica el uso del método fetch() que hemos descrito:

backbone_restful.jpg


Como vemos definimos la estructura de nuestro modelo, luego creamos una colección indicando el modelo y la URL de la cual obtendremos los datos y finalmente instanciamos la colección y le aplicamos el método fetch que va a enviar la petición GET a la URL señalada. Con esto habremos obtenido en pocas líneas de código los modelos necesarios.

Guardando Modelos al Servidor

Como no todo es solamente consultar datos, también tenemos la posibilidad de guardar la información en el servidor de origen, donde esta información caerá en alguna base de datos y estará disponible para futuras consultas.

¿Cómo guardar estos datos?
Para guardar los datos utilizaremos el método save(), este tiene la particularidad que trabaja con dos de los métodos HTTP, utilizará el PUT si el modelo que estamos guardando ya existe en el servidor, es decir, nos servirá para actualizar o editar los datos, pero en caso que el modelo sea nuevo y no contenga un id, nuestro método save() utilizará el método POST de HTTP para indicarle al servidor que debe crear un nuevo elemento con los datos que le enviaremos.


Con el método Collections.create() podemos generar un nuevo modelo, agregarlo a la colección y además enviarlo al servidor, todo esto en un solo llamado al método, veamos en la siguiente imagen el código que utilizaríamos para guardar un modelo en el servidor:


backbone_restful2.jpg


Como vemos utilizamos el método save() en este caso para modificar un modelo ya existente y el método create() lo reservamos para crear un nuevo modelo dentro de la aplicación, esto no tiene que ser así siempre, sin embargo es una de las formas más simples de lograrlo.

¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X