Un framework web de Python para crear APIs con anotaciones de tipos estándar, validación automática, documentación OpenAPI y alto rendimiento.
encode/django-rest-framework
Un toolkit para crear Web APIs sobre Django, con serialización, políticas de autenticación, viewsets y una API explorable desde el navegador.
- Estrellas
- 30,210
- Forks
- 7,091
- Issues abiertos
- 58
- Último commit
- hace 10 horas
¿Qué es?
Django REST framework (DRF) es un toolkit para crear Web APIs sobre Django. Proporciona serializers que convierten datos tanto de modelos del Django ORM como de fuentes que no usan el ORM en formatos como JSON, junto con la lógica de validación correspondiente para las solicitudes entrantes.
El framework ofrece varios estilos de vistas, desde vistas simples basadas en funciones hasta vistas genéricas basadas en clases y viewsets, además de routers que generan automáticamente la configuración de URL. Incluye políticas de autenticación y permisos, y hay paquetes opcionales que añaden compatibilidad con OAuth1a y OAuth2.
Una característica clave es la API explorable desde el navegador, una interfaz web que permite a los desarrolladores explorar y probar endpoints directamente en el navegador. El proyecto requiere Python 3.10 o posterior y es compatible con las versiones recientes de Django 5.2, 6.0 y 6.1.
Funciones clave
- 01Los serializers funcionan tanto con modelos del ORM como con fuentes de datos simples.
- 02La API explorable permite a los desarrolladores probar endpoints en el navegador.
- 03Políticas integradas de autenticación y permisos, con paquetes opcionales para OAuth1a y OAuth2.
- 04Los viewsets y routers generan endpoints coherentes y la configuración de URL automáticamente.
- 05Las vistas basadas en funciones siguen disponibles cuando se necesita más control.
Casos de uso
- Exponer modelos de Django como endpoints JSON para un frontend de una sola página o una aplicación móvil.
- Crear APIs internas con documentación explorable para los desarrolladores.
- Añadir autenticación OAuth2 a la API de una aplicación Django existente.
Inicio rápido
- 1
Instala el paquete con pip
pip install djangorestframework - 2
Añade 'rest_framework' a INSTALLED_APPS en la configuración
- 3
Inicia el servidor de desarrollo y abre la API navegable
./manage.py runserver
Antes de usarlo
- Se requieren Python 3.10 o una versión posterior y Django 5.2, 6.0 o 6.1.
- En los metadatos, la licencia figura como NOASSERTION; consulta el archivo de licencia antes de usarlo con fines comerciales.
Temas
Preguntas frecuentes
- ¿Qué es django-rest-framework?
- Un toolkit para crear Web APIs sobre Django, con serialización, políticas de autenticación, viewsets y una API explorable desde el navegador. Django REST framework (DRF) es un toolkit para crear Web APIs sobre Django. Proporciona serializers que convierten datos tanto de modelos del Django ORM como de fuentes que no usan el ORM en formatos como JSON, junto con la lógica de validación correspondiente para las solicitudes entrantes.
- ¿django-rest-framework es gratuito? ¿Qué licencia tiene?
- django-rest-framework es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿django-rest-framework sigue mantenido?
- Mantenimiento activo. El último commit de django-rest-framework fue el 20 oct 2026.
- ¿Para qué puedo usar django-rest-framework?
- Exponer modelos de Django como endpoints JSON para un frontend de una sola página o una aplicación móvil. Crear APIs internas con documentación explorable para los desarrolladores. Añadir autenticación OAuth2 a la API de una aplicación Django existente.
- ¿Cómo se instala django-rest-framework?
- Instala el paquete con pip: pip install djangorestframework Añade 'rest_framework' a INSTALLED_APPS en la configuración Inicia el servidor de desarrollo y abre la API navegable: ./manage.py runserver
- ¿Dónde consigo django-rest-framework?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/encode/django-rest-framework
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Un framework web de Python de alto nivel que promueve el desarrollo rápido y un diseño limpio y pragmático.
Lista de paquetes, herramientas, tutoriales y recursos de terceros, seleccionada por la comunidad, para desarrollar con Django.
Sistema de gestión de inventario de código abierto con control de stock, seguimiento de piezas, una REST API y un sistema de plugins, desarrollado con Python y Django.
Registrador de entrenamientos, nutrición y peso corporal, de código abierto y autohospedado, basado en Django, con REST API y aplicaciones móviles complementarias.
Un framework HTTP de alto rendimiento para Go con una API similar a Martini, diseñado para REST APIs, aplicaciones web y microservicios.