API,

Django API REST

12:28 a.m. Unknown 0 Comments



Crear un Api REST en Django es muy sencillo solo necesitamos ir a la página de Django Rest Framework donde nos pedirá que instalemos

pip install djangorestframework
pip install markdown      


Una vez instalado tendremos que configurar el archivo settings.py
Primero necesitamos agregar     ('rest_framework', ) en la sección de INSTALLED_APPS

INSTALLED_APPS = (
    ...
    'rest_framework',
)

Las configuraciones globales


La configuración se realiza de manera global en archivo settings.py
El siguiente código da permisos de lectura y escritura, existen otras configuraciones de permisos más avanzadas como para limitar acceso a cualquier usuario y denegar a cualquier usuario no autenticado

    # Use Django's standard `django.contrib.auth` permissions,
    # or allow read-only access for unauthenticated users.
    'DEFAULT_PERMISSION_CLASSES': [
        'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly'
    ]
}

 Agregar modelos a la API REST

 Primero crearemos una app donde crearemos el modelo  



 Despues tenemos que agregar la app de Superhero a INSTALLED_APPS en settings.py



En el model.py de  la app Superhero crea tu propio modelo  



No olvides ejecutar el comando migate 


Ejecuta el comando python manage.py createsuperuser para crear un superusuario que sera util para manipular  la API REST 


El siguiente paso seria crear un archivo llamado Serializers.py en nuestra app Superhero


Existen varias maneras de generar una serializacion pero utilizando la clase ModelSerializer es muy facil

Solo creamos una clase SuperSerilizer lo interesante de esta clase es que no usa un models.Model si no un serializers.ModelSerializer un utilizar un  Meta para especificar el modelo a serializar así como sus campos 

Crear el View


Ahora solo faltaría crear un View, nosotros utilizaremos generics que nos ofrece rest_framework para hacer un View muy similar a los que nos ofrece django.



Lo único que tenemos que hacer es una clase que utilicé generics.ListCreateAPIView después en el queryset utilizando el ORM de django traemos todos los superhéroes y serializer_class que tenga referencia de la case a serializar 


Crear URL


Lo mas importante de este archivo es la línea urlpatterns = format_suffix_patterns(urlpatterns) 


Este es el resultado final solo nos falta ingresar los superhéroes 
 GIT

0 comentarios: