Framework REST para Django

  
23 de Julio de 2014   0  

Hoy en día es importante poder generar proyectos de sofware web que puedan ser altamente escalables y compartir la información almacenadas en ellas de una manera segura para clientes móviles o web derivadas de la misma.

 

Para el caso de la comunicación con plataformas externas, podemos utilizar Web Services con diferentes protocolos de comunicación como SOAP y REST para construir API’s web robustas.

En esta ocasión hablaré de Django REST framework el cual nos permite montar un motor REST de nuestra plataforma de manera rápida y sencilla.

¿Qué es Django REST Framework?

Es un conjunto de herramientas de gran alcance y flexible que hace que sea fácil la construcción de  APIs Web. Este framework adicionalmente cuenta con la capacidad de poder liberar el API de manera que pueda ser navegado y utilizado para ejecutar ejemplos directamente desde nuestro navegador web y probar la funconalidad de los servicios que vayamos liberando.

quickstart

Razones para utilizarlo.

Algunas de las razones que podemos enlistar son las siguientes:

  1. El API browseable Web es una gran victoria usabilidad para sus desarrolladores.
  2. Permite el uso de políticas de autenticación incluyendo OAuth1a y OAuth2.
  3. La serealización soporta fuentes de datos tanto ORM como non-ORM.
  4. Personalizable hasta el fondo – sólo tienes que utilizar puntos de vista basados ​​en funciones regulares si no necesita las características más potentes.
  5. Amplia documentación, y un gran apoyo de la comunidad.
  6. Es utilizado por grandes empresas como Mozilla y EventBrite.
Requisitos.

Para el correcto funcionamiento de este rest framework, los requisitos que debemos cubrir son los siguientes:

  • Python (2.6.5 +, 2.7, 3.2, 3.3)
  • Django (1.3, 1.4, 1.5, 1.6)

Los siguientes paquetes son opcionales:

  • Markdown (2.1.0+)
  • PyYAML (3.10+)
  • defusedxml (0.3+)
  • django-filter (0.5.4+)
  • django-oauth-plus (2.0+)
  • django-oauth2-provider (0.2.3+)
  • django-guardian (1.1.1+)
Instalación.

La instalación de este framework es muy sencilla basta con ejecutar el comando “pip”, incluyendo cualquier paquete adicional que se desee.

pip install djangorestframework
pip install markdown # Soporte Markdown para el api navegable.
pip install django-filter # Soporte de filtrado

Posteriormente se requiere agregar la aplicación ‘rest_framework’ al listado de ‘INSTALLED_APPS’ que se encuentra dentro de las configuraciones de nuestro proyecto en Django.

INSTALLED_APPS = (
 ...
 'rest_framework',
)

Si entre tus requerimientos se encuentra poder utilizar un API navegable, por favor agrega lo siguiente en tu archivo urls.py principal:

urlpatterns = patterns('',
 ...
 url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))
)

Note que este path URL puede ser el que guste, pero siempre y cuando tenga el include del “rest_framework.urls” con el namespace “rest_framework”.

Quickstart y tutorial disponible.

Si deseas conocer más sobre esta gran herramienta, puedes consultar el QuickStart y el tutorial que tienen publicado en su página principal que se encuentra en: http://www.django-rest-framework.org/#quickstart.

 

Fuente: http://www.django-rest-framework.org/



Alex Dzul

FullStack Python / Django Developer. #jslove