Índice de contenido
- Lo que aprenderás en este Curso Magistral (Resumen Ejecutivo)
- ¿Por qué Django? El "Framework con baterías incluidas"
- Por qué Django sigue siendo una referencia en Python
- El Ecosistema: ¿Qué necesitas dominar primero?
- La decisión en Python: ¿Qué aprender primero?
- La diferencia entre un Novato y un Senior en Django
- Tu Camino Hacia Senior: Fases de Maestría
- Fases del Curso Garantizadas:
- Recursos Gratuitos para Empezar AHORA
- Libro y Curso Comunitario Gratis
- Repositorio del Proyecto
- Prueba la Aplicación Demo
- ¿Por qué aprender Django hoy?
- ¿Qué aprenderás en este Curso de Django?
- Experiencia del Autor en el Mundo Real
- Preguntas Frecuentes
- 1. Introducción al Curso de Django 6
- 1. Introducción
- 2. Características de un proyecto en Django
- 3. Software necesario para desarrollar en Django
- 4. Paquetes y buenas prácticas al trabajar con Python y Django
- 5. Instalar ambiente virtual
- 6. Crear el Ambiente Virtual mediante VSC para Django 6
- 7. Instalar Django
- 8. Proyecto vs aplicación
- 9. Comandos básicos de Python para desarrollar en Django 6
- 10. Crear un proyecto en Django
- 11. Estructura del proyecto en Django 06
- 12. Línea de comandos
- 13. Crear una aplicación en Django
- 14. Registrar aplicación en el proyecto en Django
- 15. Trabajando con Git y GitHub con Django 6
- 1. Introducción
- 2. Consola interactiva/consola de Python
- 3. Archivos de Python
- 4. Variables y tipo de datos
- 5. Operaciones matemáticas
- 6. Concatenación de String
- 7. Casteos
- 8. Listas
- 9. Condicionales
- 10. Ciclos
- 11. Funciones
- 12. Funciones parte 2
- 13. Diccionarios
- 14. Clases, Primeros pasos
- 15. Clases, Primeras clases
- 16. Clases, Método constructor
- 17. Clases, Herencia
- 18. Módulos
- 19. Módulos en la practica
- 1. Introducción
- 2. Introducción
- 3. ¿Qué son los modelos en Django 6?
- 4. Opcional: Gemini CLI y/o Gemini Agent, tu asistente IA para Django 6
- 5. Crear el Primer Modelo en Django 6
- 6. Opcional: Como usar Gemini Agent con Visual Studio Code para corregir errores
- 7. Reto: Crear modelo de comentario en Django 6 Mediante IA
- 8. Introducción a las migraciones
- 9. Crear migraciones
- 10. Ejecutar migraciones
- 11. Clonar Proyecto en Django con Git y Github y Configurar
- 12. Revertir Migraciones
- 13. Otras operaciones para realizar en las migraciones
- 14. ¿Tienen sentido las migraciones en Django 6?
- 15. Hola Mundo
- 16. Ejecutar el proyecto en un servidor
- 17. Vistas, templates y rutas
- 18. Rutas
- 19. Pase de parámetros al template
- 20. Almacenar los templates en carpetas
- 21. Formularios
- 22. Formularios en Django - Protección mediante TOKEN CSRF
- 23. Formularios - Determinar el tipo de petición desde la vista GET y POST
- 24. Crear un objeto modelo y registrar en la base de datos
- 25. Formularios - Obtener los datos desde el objeto request
- 26. Modelos para los formularios
- 27. Procesar y Guardar Datos de Formularios
- 28. ModelForm
- 29. ModelForm en Django - Primeros Pasos
- 30. ModelForm - Instancias, Crear y Validaciones
- 31. Operaciones CRUD con el ORM y la base de datos + Shell
- 32. Shell - Para realizar pruebas
- 33. Implementar Operaciones CRUD en nuestra aplicación en Django 6
- 34. Consideraciones importantes sobre el CRUD anterior en Django 6
- 35. Redirecciones en Django
- 36. Paginación
- 37. Paginar Registros - Definir la Paginación en el template con Bootstrap 5
- 38. Paginar Registros - Definir la Paginación en el template
- 39. Encontrar o 404 - get_object_or_404
- 40. Encontrar o 404 - get_object_or_404
- 41. Espacio de Nombres de Aplicación para definir las rutas y sus nombre
- 42. Generar Data de Prueba en Django 6 o en Python con Faker
- 43. Faker: Crear script
- 44. Publicar en GitHub
- 45. Extra: Maquetación de Prototipos con Asistencia de I.A.
- 1. Introducción
- 2. Django Admin, Crear Superusuario (createsuperuser)
- 3. Presentación de Django Admin
- 4. Agregar nuestros propios modelos
- 5. Personalizar opciones de consulta
- 6. Personalización de columnas, edición, filtrado y más
- 7. Personalización Registrar clases mediante decorador
- 8. Registrar el resto de los modelos
- 9. Agrupar los campos de gestión, fields
- 10. Formulario: Personalizar campos
- 11. Listado: Crear campos en Django Admin
- 12. Personalización de Acciones y Botones en Formularios al momento de editar
- 13. Formularios en Línea (Inlines) para Relaciones en Django Admin
- 14. Personalizar/Sobreescribir métodos de gestión CRUD
- 15. Personalizar Django Admin con formularios de tipo ModelForm
- 16. Configurar la configuración regional (localización)
- 17. Crear el slug de los elementos automáticamente en Django admin
- 18. Extra: Maquetación de Prototipos con Asistencia de I.A.
- 19. Tema y archivos estáticos CSS, JS...
- 20. Publicar en github
- 1. Introducción
- 2. Presentación
- 3. Form para los elementos
- 4. Vista para procesar el formulario
- 5. Reto: Crea un ModelForm para los elementos
- 6. Terminar de implementar el CRUD para los elementos
- 7. Validaciones: Introducción
- 8. Mostrar los errores de validación
- 9. Mostrar los errores de validación
- 10. Validaciones personalizadas
- 11. Validaciones personalizadas, campos generales
- 12. Referenciar los campos y labels del formulario individualmente
- 13. Form Assets (Media class): Atributo widget
- 14. Personalización de campos de formulario con Widgets de manera global
- 15. Form Assets (Media class): Modificar atributos
- 16. Form Assets (Media class): Tipos de campos
- 17. Form Assets (Media class): Django widgets
- 18. Field group
- 19. Publicar en github
- 1. Introducción
- 2. Presentación
- 3. Representar el contenido dinámico de un Template
- 4. Elementos Clave del Motor de Templates
- 5. Generar el template maestro o base
- 6. Fragmentos de templates y parámetros
- 7. Etiquetas lógicas: if, presentación
- 8. Etiquetas lógicas: for, presentación
- 9. Programar nuestras propias etiquetas
- 10. Filtros
- 11. Programar nuestros propios filtros
- 12. Cambiar de motor de plantilla - Jinja2
- 13. Gestión y Carga de Archivos Estáticos (CSS, JS, Imágenes)
- 14. Publicar en github
- 1. Introducción
- 2. ORM - Trabajando con QuerySets - Operaciones CRUD
- 3. Operadores Lógicos en QuerySets: AND, OR y NOT y Clase Q
- 4. Problema del N+1 en el ORM de Django y como evitarlo
- 5. Relaciones Inversas en Django y Problema N+1
- 1. Introducción
- 2. ¿Qué es una API REST?, qué es una API, una Rest, ¿Por qué Django REST Framework?
- 3. Instalar paquete y configurar
- 4. Crear aplicación para la Rest Api
- 5. Django Rest Framework en la práctica, Serializers y Viewsets
- 6. Creando la Primera Api Rest tipo CRUD en Django Rest Framework: Serializers, Viewsets Ruteos + Documentación automática
- 7. Problemas al momento de crear/actualizar un elemento
- 8. Habilitar la paginación
- 9. Métodos personalizados para las serializaciones
- 10. Métodos personalizados para los viewset
- 11. Métodos hooks en los viewsets
- 12. Autenticación: Presentación, Sesión y básica
- 13. Autenticación: Token: Función login
- 14. Probar la API Rest mediante Postman
- 15. Configurar los CORS
- 16. Publicar en github
- 17. Extra: Generar el slug de manera automática
- 18. Sesión
- 1. Introducción
- 2. Conociendo el ecosistema para desarrollar en Vue
- 3. Crear un Proyecto en Vue con NPM y Vite
- 4. Estructura de un proyecto en Vue
- 5. Ejecutar un proyecto en Vue
- 6. Instalar Vue Router
- 7. Configurar Vue Router
- 8. Instalar y configurar axios
- 9. Primera conexión con axios, obtener un listado
- 10. Variables, reactividad y pruebas de la data desde el navegador
- 11. Los v-for para interar datos reactivos en Vue
- 12. Comparativa entre axios y fetch
- 13. Crear un listado de categorías
- 14. Repaso a lo implementado, componente de listado de tipos y clonar proyecto
- 15. Navegación entre páginas: RouterLink
- 16. Sobre Naive UI, el paquete basado en componente
- 17. Naive UI, Instalar y configurar
- 18. Componente de tabla para las categorías y tipos
- 19. Space: Contenedor
- 20. Layout: Esqueleto básico
- 21. Menú: con componente menu
- 22. Menú: Establecer el RouterLink
- 23. Adaptar menú en un componente aparte
- 24. Header para las categorías y tipos
- 25. Integrar Tailwinds.css
- 26. Adaptar detalles visuales
- 27. Listado de elementos
- 28. Extra: Agrupar rutas
- 29. Formulario para categorías, crear
- 30. Formulario para categorías, editar
- 31. Enlaces para el CRUD para las categorías
- 32. CRUD para los tipos
- 33. CRUD para los elementos
- 34. Integrar CKEditor
- 35. Adicional: Cambios visuales con Tailwind
- 36. Extra: El uso de Alias (@) en las importaciones
- 1. Introducción
- 2. Presentación de las vistas basadas en clases
- 3. Tipos de VBC y crear la estructura
- 4. Crear las primeras CBV para manejar el formulario y de éxito
- 5. Clase de vista general: View
- 6. TemplateView
- 7. UpdateView: Actualizar
- 8. CreateView: Crear
- 9. DeleteView: Borrar
- 10. DetailView: Detalle
- 11. IndexView: Listado
- 12. LoginView: Vista para el login
- 13. LogoutView: Vista para el logout
- 14. Registrar usuarios
- 15. PasswordChangeView: Vista para cambiar la contraseña y PasswordChangeRest: Vista para cambiar restablecer la contraseña
- 16. PasswordChangeRest: Vista para cambiar restablecer la contraseña
- 17. PasswordChangeView: Vista para cambiar la contraseña
- 18. Publicar en github
- 1. Introducción
- 2. Presentación
- 3. Crear un proyecto y aplicación
- 4. CSV: Primeros pasos
- 5. CSV: Leer
- 6. CSV: Leer, Diccionario
- 7. CSV: Escribir un archivo
- 8. CSV: Escribir un archivo
- 9. Cerrar archivo y palabra reservada with
- 10. XLSX: Crear aplicación
- 11. XLSX: Leer
- 12. XLSX: Escribir
- 13. Generar PDFs: Crear aplicación
- 14. Generar PDFs: Generar un PDF a partir de una página HTML
- 15. Generar PDFs: Weasyprint otras opciones
- 16. Generar PDFs: Generar un PDF a partir de un Canvas
- 17. Círculos, rectángulos y líneas, colores...
- 18. Descargar, cualquier archivo existente
- 19. Descargar PDF, reporlab
- 20. Publicar en github
- 1. Introducción
- 2. Hablamos sobre Alpine, una muy breve presentación de su uso y sintaxis
- 3. Migrar la aplicación de to do list a Django
- 4. Crea app en Django para los To Do
- 5. Modelo y migración para los To Do
- 6. Crear Api Rest para la app con DRF
- 7. Instalar axios
- 8. Crear to do desde Django
- 9. Editar un todo
- 10. Eliminar un to do
- 11. Marcar completado un to do
- 12. Reordenación en base a IDs
- 13. Eliminar todos los to do
- 14. Administrar solo los To Do del usuario
- 1. Introducción
- 2. Sobre Django Channels, que es y como podemos crear apps real-time
- 3. Crear proyecto e instalar dependencias
- 4. Crear modelos de ejemplo y data de ejemplo
- 5. Configurar proyecto y servidor con channels[daphne]
- 6. Websockets, Consumers y procesos asíncronos
- 7. Creando nuestro primer Consumer en Django Channels
- 8. Cliente: Consumir Websocket, View y Template
- 9. Cliente: Consumir Websocket, JavaScript
- 10. Descarga e Instalación de Archivos Estáticos, Bootstrap 5
- 11. Cliente: Enviar y recibir mensajes desde el JavaScript al Consumer
- 12. Comunicación por las capas de canales (Multiple channels)
- 13. Channels Layers (Multiple Channels), configuraciones y Redis
- 14. Conceptos claves sobre el uso del multiple channels
- 15. Implementación de Multiple Channels en Django: Cambios en la app de chat
- 16. Multiple Channels (Groups) Cambios en el cliente
- 17. Convertir el consumer a código asíncrono
- 18. Django: DRF, Django Channels y Vue: Aplicación de mensajes de alertas
- 19. Middleware para la autenticación
- 20. Aplicación con Vue para consumir conectarse al websocket multiple channel de Django
- 21. Publicar en github
- 22. Opcional: Configuración de Redis en Django Channels
- 23. Usar múltiples Consumers
- 24. Cambios con IA: Scroll automático, recargar el listado (Ref) y efecto CSS
- 25. Rediseño con IA: Google Antigravity
- 1. Introducción
- 2. Sobre como podemos crear autenticación personalizada
- 3. Evaluando la pagina de login y funcionamiento de los templates
- 4. Instalar Bootstrap 5 y Font Awesome
- 5. Crear un template maestro
- 6. Especificación de atributos HTML con django-widget-tweaks
- 7. Formulario para login
- 8. Maquetación del resto de los templates para autenticación
- 9. Enviar emails
- 10. Configurar el email al momento del registro
- 11. Perfil: Estructura base
- 12. Cargar el avatar: Modelo, migraciones y formulario
- 13. Upload, MEDIA ROOT
- 14. Eliminar imagen del avatar cargada anteriormente
- 15. Validar imagen, dimensiones, peso y extensiones
- 16. Otros campos de formularios
- 17. Mostrar datos de la imagen cargada
- 18. MEDIA_URL y MEDIA_URL: Configuración de URLs en Desarrollo
- 19. La "Carpeta Virtual": MEDIA_URL
- 20. Publicar en github
- 1. Introducción
- 2. Implementar un signal
- 3. Envío de Email con Contenido HTML
- 4. La criptografía en Django
- 5. Codificar con Base64 y con Hash
- 6. Uso de Mensajes tipo Flash en Django
- 7. Traducciones con Django, Introducción
- 8. Traducción: Primeros pasos
- 9. Traducción: gettext
- 10. Traducción: Configuraciones
- 11. Traducción: Carpeta de traducción
- 12. Traducción: Ignore
- 13. Traducción: Generar archivos de traducción
- 14. Traducción: Traducir
- 15. Traducción: Compilar archivos de traducción
- 16. Traducción: Configuraciones
- 17. Cómo Configurar y Conectar Django con MySQL paso a paso
- 18. Registrar Log en archivo
- 19. Throttling en Django Rest Framework y como usarlo
- 20. Usar Google Antigravity con Django
- 21. Introducción a Celery: Procesamiento en Segundo Plano en Python: FastAPI Django y Flask
- 1. Introducción
- 2. Personalización del Django Admin: Estética y Modernización
- 3. Introducción a Easy Thumbnails en Django
- 4. Django Debug Toolbar
- 5. Django Import Export
- 6. Django Rest Framework
- 7. Django CORS Headers
- 8. Django Channels
- 9. Django seed
- 10. Django Filter - Filtros sobre las entidades en DRF y Web
- 11. django-environ - Usar variable de entorno con los .env
- 12. Autenticación mediante tokens para los WS, demo
- 13. Actualizar la dependencia de verificar el token
- 14. Seleccionar Habitación
- 15. Implementación de Filtro para obtener los mensajes por Habitación
- 16. Actualización de mensajes sin recarga completa
- 1. Introducción
- 2. Introducción a las pruebas, conceptos claves
- 3. Pruebas matemáticas
- 4. El objeto Client: Tu navegador interno
- 5. Herramientas para realizar las pruebas
- 6. Configuración de la Base de Datos de Test
- 7. Crud de Comentarios: Index Paginado
- 8. Crud de Comentarios: Crear
- 9. Crud de Comentarios: Actualizar
- 10. Crud de Comentarios: Eliminar
- 11. Formularios
- 12. Api: Paginados
- 13. Api: Detalle
- 14. Api: Crear
- 15. Api: Actualizar
- 16. Api: Eliminar
- 17. Probar CommentSerializer
- 18. Api: Paginados
- 19. API: Eliminar
- 20. API: Serialización
- 21. Errores de validaciones
- 22. Modularización de las Pruebas: Mejorar la estructuras de archivos y carpetas
- 23. Creando Pruebas Unitarias en Django con Gemini Agent, ejemplos y consideraciones.
- 24. Autenticación
- 25. Factory
- 26. Publicar en github
- 27. Autenticación para las pruebas
- 28. Publicar en github
- 1. Railway, deploy de tus aplicaciones en PHP, Python web, Node... como en Heroku GRATIS
- 2. Deploy en Railway
- 3. Cómo publicar tu aplicación Django GRATIS en PythonAnywhere
- 4. Curso de Docker para desarrolladores
- 5. DOCKERIZAR tu APP en Django + Servidor en Gunicorn - 16
- 1. Crear ambiente virtual
- 2. Crear un proyecto
- 3. Crear aplicación en Django - 03
- 4. Modelos
- 5. Registrar aplicación y migraciones
- 6. Vistas bases, listado y detalle
- 7. Plantilla maestra
- 8. Django Admin
- 9. Data de prueba
- 10. Configurar Bootstrap 5
- 11. Configurar Bootstrap
- 12. Listado
- 13. Paginación
- 14. Container
- 15. Detalle
- 16. Enlace de navegación
- 17. Listado: Filtro en el servidor
- 18. Listado: Filtro en el cliente
- 19. Listado: Establecer los valores del servidor
- 20. Listado: Limpiar Filtro
- 21. PayPal: Modo Desarrollador
- 22. PayPal: Cliente: Primeros pasos
- 23. Configuraciones personalizadas en Django
- 24. PayPal Cliente: Configurar Monto
- 25. PayPal Cliente: onApprove
- 26. Enviar ordenID al servidor
- 27. PayPal Servidor, Paquete para realizar peticiones http
- 28. PayPal Servidor, Crear clase PayPal
- 29. PayPal Servidor, Generar token
- 30. PayPal Servidor, Aprobar compra
- 31. Obtener datos relevantes
- 32. Verificar compra exitosa
- 33. Detalle mediante el slug
- 34. Listado, truncar datos de la descripción
- 35. Diseños para la app
- 36. Publicar en github
- 1. Los ambientes virtuales para desarrollar nuestras aplicaciones
- 2. Enviar Email (SMTP Mailtrap)
- 3. Enviar Email con contenido HTML (SMTP Mailtrap)
- 4. Paginación: Primeros pasos
- 5. Paginación: Construyendo listado de comentarios
- 6. Paginación: Construyendo un listado de páginas genéricas
- 7. Paginación: Adaptar el listado de páginas genéricas a Bootstrap 4
- 8. Logging: Manejo de los logs y generación de msj
- 9. Criptografía: Proteger datos sensibles
- 10. CSV: Exportar datos
- 11. CSV: Exportar nuestros contactos
- 12. Traducción estándar en Django: Presentación
- 13. Traducción estándar en Django: Generar textos a traducir
- 14. Traducción estándar en Django: Generar archivos de lenguaje/mensaje
- 15. Traducción estándar en Django: Probar nuestra aplicación
- 16. Traducción estándar en Django: Imprimer en los templates
- 17. Sesión: Guardar y eliminar datos
- 1. Introducción
- 2. Easy Thumbnails: Generar imágenes pequeñas fácilmente
- 3. Django import / export: Primeros pasos
- 4. Django import / export: Exporta datos fácilmente
- 5. Django import / export: Importar Datos fácilmente
- 6. Django Debug Toolbar: Ve en detalle todo lo que sucede en tu aplicación
- 7. Django rest framework: Construye tu Api Rest
- 8. Django Bootstrap Form: Personaliza el estilo de tus formularios
- 9. Django Cors Headers: Habilita peticiones a tu app desde otras apps
- 10. Personalizar el diseño del módulo de admin
- 1. Introducción
- 2. Definir el modelo para las imágenes de los productos
- 3. Registrar la relación de imágenes desde el formulario de Elementos en Admin
- 4. Escalar y recortar (Scale/crop) la imagen cargada
- 5. Los signals para escuchar eventos o sucesos en nuestra app
- 6. Borrar imágenes asociadas al momento de borrar el registro
- 7. Borrar imágenes al momento de cambiar un registro
- 8. Borrar archivo extra de la rescalada
- 1. Introducción
- 2. Primeros pasos con la autenticación social
- 3. Configurar una URL a nuestro proyecto y resolverla de manera local
- 4. Comandos e información de ayuda
- 5. Configurar un servidor SSL de desarrollo
- 6. Terminar las configuraciones para la autenticación social
- 7. Autenticación social con Google/Gmail: Crear credenciales
- 8. Autenticación social con Google/Gmail: Configurar en la app
- 9. Posibles problemas con Twitter
- 10. Autenticación social con Twitter: Crear credenciales
- 11. Autenticación social con Twitter: Configurar en la app
- 12. Autenticación social con Facebook: Crear credenciales
- 13. Autenticación social con Facebook: Configurar en la app
- 14. Diseño para los botones sociales en la página de login
- 1. Introducción
- 2. Agregar un(os) producto(s) al carrito
- 3. Vista para editar el carrito
- 4. Remover un item del carrito
- 5. Crear funcion ajax para devolver el total de productos en el carrito
- 6. Consumir la cantidad de productos del carrito mediante fetch
- 7. Diseño del botón para el carrito de compras
- 8. Opcional: Actualizar carrito cada cierto tiempo
- 9. Crear botón "Ver en el carrito"
- 10. Editar las cantidades del carrito: Crear función ajax
- 11. Editar las cantidades del carrito: Crear estructura y lógica
- 12. Editar las cantidades del carrito: Enviar petición
- 13. Editar las cantidades del carrito: Soportar múltiples productos
- 14. Actualizar el precio del carrito al momento de variar las cantidades
- Algunas recomendaciones
Aprender Django fue una de las decisiones más importantes en mi camino como desarrollador web. Siempre me ha gustado trabajar con herramientas que me permitan construir rápido, bien y con una estructura clara, y Django fue exactamente eso.
"Desde que descubrí su filosofía de 'baterías incluidas', entendí que estaba frente a un framework que realmente te acompaña en cada paso: trae todo listo para crear aplicaciones web robustas."
Para mi, es el Laravel en Python Web y por muy buenas razones!
Y eso es justo lo que quiero transmitirte con este Curso Django, un programa completo y actualizado para que aprendas a crear aplicaciones web profesionales desde cero.
Lo que aprenderás en este Curso Magistral (Resumen Ejecutivo)
- Dominio Total del Entorno: Configuración profesional con Entornos Virtuales, sin romper tu PC, creación de modelos, migraciones, modificación de datos, relaciones..
- Arquitectura MVT Sólida: Entiende por fin cómo se conectan los Modelos, Vistas y Templates sin enredos, uso de rutas dinámicas, vistas basadas en funciones y clases, lógica de presentación.
- Formularios, Validaciones y Autenticación: Creación de formularios, validaciones personalizadas, login y registro.
- Bases de Datos con el ORM de Django: Domina las relaciones, migraciones y consultas seguras sin escribir SQL.
- APIs RESTful Modernas: Integra Django Rest Framework (DRF), serializadores, viewsets, autenticación por token y consúmelo con Vue 3 y Axios.
- Seguridad y Autenticación: Sistemas de login, registro, manejo de contraseñas y permisos blindados.
- Despliegue Profesional: Lleva tu código al mundo real usando Railway y PythonAnywhere.
Este es el curso MÁS completo que encontrarás de Django. Abordaremos todos los aspectos, desde los fundamentos hasta temas avanzados para el desarrollo moderno de aplicaciones web.
¿Por qué Django? El "Framework con baterías incluidas"
Aprender Django fue una de las decisiones más rentables en mi camino como desarrollador. Sé lo frustrante que puede ser pasar horas configurando herramientas, dependencias y cientos de paquetes de terceros solo para tener un sistema de inicio de sesión o un panel de administración en otros frameworks (sí, hablo de JavaScript y Node.js en muchos casos).
Con Django eso es historia. Tienes todo listo desde el primer "Hola Mundo": ORM seguro, autenticación, el maravilloso Django Admin y un sistema de validación robusto.
Por qué Django sigue siendo una referencia en Python
Django lleva casi dos décadas evolucionando de forma estable. Es maduro, profesional, usado por empresas gigantes y, sobre todo, práctico. En un mundo donde todo cambia rápido, Django sigue ofreciendo una base sólida que no se rompe cada 6 meses.
Cubriremos una amplia gama de temas esenciales e imprescindibles:
- Aspectos Básicos: Rutas, vistas, templates, modelos, manejo de formularios y validaciones.
- Desarrollo Avanzado:
- Rest API: Implementación de APIs con Django Rest Framework (DRF) y sistemas de autenticación basados en tokens.
- Paquetes Clave: Uso de Django Channels y otros paquetes esenciales del ecosistema Django.
El Ecosistema: ¿Qué necesitas dominar primero?
| Tecnología | Curva de Aprendizaje | Propósito en el App |
|---|---|---|
| Python 3 | Baja | Lenguaje base de la lógica. |
| Django & ORM | Media | El corazón (Rutas, MVT, Base de datos). |
| Django Rest Framework | Alta | Creación de APIs para frontends dinámicos. |
| Vue 3 + Alpine.js | Media | Reactividad y UI moderna sin recargas. |
La decisión en Python: ¿Qué aprender primero?
| Objetivo | Framework Ideal | ¿Por qué? |
|---|---|---|
| APIs rápidas y microservicios | Flask | Microframework. Añade solo lo necesario. |
| Proyectos monolíticos con CMS | Django | Framework "Pilas incluidas". Administrador listo. |
| Fast data y APIs de alto rendimiento | FastAPI | Enfoque moderno, asíncrono y tipado estricto. |
La diferencia entre un Novato y un Senior en Django
Observa cómo Livewire 4 transforma un flujo tradicional de formularios pesados en un componente elegante, reactivo y fácil de mantener:
# Problema N+1 Query
libros = Libro.objects.all()
for libro in libros:
# Cada iteración hace un query a Autor
print(libro.autor.nombre)# Query Optimizado con JOIN
libros = Libro.objects.select_related('autor').all()
for libro in libros:
# Solo 1 Query a la BBDD rápido y eficiente
print(libro.autor.nombre)
Tu Camino Hacia Senior: Fases de Maestría
He diseñado esta metodología para que pases de configurar tu entorno hasta alcanzar una maestría técnica integrando formularios complejos, APIs Rest, Django Admin y paquetes IMPRESCINDIBLES
Fases del Curso Garantizadas:
- Fase 1: El Núcleo de Python: Afianzaremos las bases de Python, Listas, y Herencia de Clases rápidamente para vienes de otros lenguajes.
- Fase 2: El MVT y Bases de Datos: Modelos, Migraciones y Formularios completos. Crearemos nuestro primer gran sistema CRUD desde cero, usaremos también Django Admin para la gestion de recursos.
- Fase 3: Modernidad con Vue y API Rest. Usaremos Django Rest Framework para proveer datos a nuestro Front-end moderno construido con Vue 3.
- Fase 4: Nivel Experto y Producción: Django Channels (Websockets), pasarelas (PayPal) y el despliegue final en Railway.
Recursos Gratuitos para Empezar AHORA
Accede a material de alta calidad sin costo y comprueba por qué Livewire 4 es el futuro del desarrollo Laravel:
Libro y Curso Comunitario Gratis
Descubre mi estilo de enseñanza con la versión GRATIS. Clases esenciales para que arranques tu camino hoy mismo.
Repositorio del Proyecto
Explora el código base que utilizaremos en el curso. Transparencia total en el nivel técnico que alcanzaremos:
Prueba la Aplicación Demo
Interactúa con el proyecto final que construirás en el curso.
¿Por qué aprender Django hoy?
Django no se queda en lo básico. Desde el primer proyecto tienes autenticación, modelos, formularios y un panel administrativo profesional. Es maduro, estable y usado por empresas gigantes. Aprender Django es invertir en una herramienta que no se rompe cada 6 meses y que te permite construir desde E-commerces hasta plataformas educativas escalables.
Django es un framework con muchas opciones, nos permite crear aplicaciones con el lenguaje del momento Python, un lenguaje de programación modular, con una sintaxis impecable que también podemos usarlo en ambiente web.
Nos ofrece un esquema modular entre proyecto y aplicaciones, un conjunto importante de paquetes para extender el ya de por sí, completo framework y con esto, la creación de proyectos escalables.
¿Qué aprenderás en este Curso de Django?
- Fundamentos esenciales de Django y Python
- Empezamos por lo necesario: entorno virtual, instalación correcta, estructura del proyecto y el famoso patrón MVT.
- MVT: modelos, vistas y templates sin complicaciones
- Aprenderás a conectar cada pieza del framework para construir aplicaciones completas con claridad.
- ORM, migraciones y relaciones entre modelos
- Django ORM es una maravilla cuando entiendes cómo funciona. Verás relaciones uno a muchos, muchos a muchos y uno a uno, además de consultas avanzadas con managers personalizados.
- Django Admin: la joya que acelera tu desarrollo
- Aquí vuelve mi experiencia personal: desde que usé Django Admin por primera vez, entendí por qué Django es referencia mundial. Te enseñaré a personalizarlo para convertirlo en una herramienta profesional.
- Formularios, validaciones y autenticación
- Formularios basados en clases, formularios manuales, validaciones, login/logout, registro de usuarios y permisos.
- APIs REST con Django Rest Framework
- Crearemos una REST API completa y totalmente funcional, incluyendo autenticación por token.
- Despliegues profesionales: AWS, entornos y seguridad
- Aprenderás a llevar tus proyectos a producción con AWS, buenas prácticas, entornos seguros y configuración optimizada.
Experiencia del Autor en el Mundo Real
"A lo largo de mis años llevando código desde el papel hasta producción, he escalado e-commerces, APIs públicas y sistemas SaaS complejos. Toda esta experiencia lidiando con integraciones de pasarelas y optimización de consultas la he comprimido en este curso para que tú no tengas que tropezar con la misma piedra. Estás obteniendo atajos corporativos aplicables en la industria real."
Preguntas Frecuentes
- ¿Para quién es este curso?
- Desarrolladores que ya conocen Python y quieren dominar el framework web más famoso en Python Web.
- Programadores que buscan velocidad de desarrollo con este framework con Todo en Uno.
- Nota: No es para principiantes que nunca han tocado Django.
- ¿Qué requisitos necesito?
- Conocimientos al menos básicos en Python o algún lenguaje de programación, al igual que conocer algo de HTML, CSS y JavaScript.
- ¡Ganas de dejar de aprender!
- ¿El curso incluye el libro?
- NO, el curso y el libro se venden por separado o en Bundle, el contenido es equivalente y se complementan para ofrecer una experiencia de aprendizaje total, incluso offline.