Este es el repositorio de código de Django 5 por ejemplo, escrito por Antonio Melé y publicado por Packt. Contiene todos los archivos de proyecto de apoyo necesarios para trabajar en el libro de principio a fin.
Revisor técnico: Mark Walker
Prólogo: Paolo Melchiorre
El código está organizado en directorios con el número de capítulo. Por ejemplo, Chapter02
contiene el código fuente del capítulo 2. Cada carpeta de capítulo tiene un archivo requirements.txt
que incluye todos los paquetes necesarios para ejecutar el código de ese capítulo. Estos se pueden instalar con el comando pip install -r requirements.txt
.
Ejecute el servidor de desarrollo Django con el comando:
python manage.py runserver
Docker Compose se explica en el Capítulo 17. Sin embargo, todos los capítulos incluyen una configuración de Docker Compose y un script de administración (contribución de @marksweb).
Comandos para compilar y ejecutar usando Docker Compose:
./do.sh build ./do.sh run
Lista de comandos:
build [<arg>]
: crea imágenes de Docker. Los argumentos opcionales pueden especificar imágenes específicas para construir.
exec [<arg>]
: Ejecuta un comando en un contenedor.
compose
: contenedor mínimo alrededor de Docker Compose, que garantiza que se carguen los archivos de configuración correctos.
migrate [<arg>]
: aplica cualquier migración de Django no aplicada.
makemigrations [<arg>]
: crea una nueva migración de Django, especificando argumentos adicionales si es necesario.
check
: valida la configuración de Django.
shell
: abre una terminal bash en el contenedor especificado (web_run).
start [<arg>]
: inicia el servidor Django y los servicios dependientes. Utilice -d para ejecutar de forma separada.
stop [<arg>]
: Detiene el servidor Django y los servicios dependientes.
Django 5 by Ejemplo (quinta edición) lo guiará a través de todo el proceso de desarrollo de aplicaciones web profesionales con Django. El libro no sólo cubre los aspectos más relevantes del marco, sino que también le enseñará cómo integrar otras tecnologías populares en sus proyectos Django.
El libro lo guiará a través de la creación de cuatro aplicaciones del mundo real, la resolución de problemas comunes y la implementación de mejores prácticas, utilizando un enfoque paso a paso que es fácil de seguir.
Después de leer este libro, comprenderá bien cómo funciona Django y cómo crear aplicaciones web prácticas y avanzadas.
Este libro requiere Python 3.12+ y Django 5.
El libro cubre una amplia gama de temas de desarrollo de aplicaciones web divididos en cuatro proyectos Django diferentes:
Aplicación de blog (capítulos 1-3): cree una aplicación de blog completa
Cree modelos de datos, vistas y URL
Implementa un sitio de administración para tu blog.
Utilice URL canónicas para modelos e implemente URL compatibles con SEO para publicaciones
Cree paginación de publicaciones y aprenda a crear vistas basadas en clases
Utilice formularios para permitir a los lectores compartir publicaciones por correo electrónico e implementar un sistema de comentarios utilizando formularios modelo.
Agregue etiquetas a publicaciones usando django-taggit y recomiende publicaciones similares basadas en etiquetas compartidas
Implemente etiquetas de plantilla personalizadas para mostrar las publicaciones más recientes y las publicaciones más comentadas.
Implementar un filtro de plantilla personalizado para representar Markdown
Crea un mapa del sitio y un feed RSS para tu blog
Implementar un motor de búsqueda de texto completo usando PostgreSQL
Sitio web social (capítulos 4-7): cree un sitio web para marcar y compartir imágenes
Implementar la autenticación utilizando el marco de autenticación de Django.
Amplíe el modelo de usuario con un modelo de perfil personalizado
Utilice el marco de mensajes de Diango
Cree un backend de autenticación personalizado
Implemente la autenticación social (OAuth2) con Google usando Python Social Auth
Utilice extensiones de Django para ejecutar el servidor de desarrollo a través de HTTPS
Genera miniaturas de imágenes con easy-thumbnails
Implementar relaciones de muchos a muchos en modelos.
Cree un bookmarklet de JavaScript con JavaScript y Django
Agregue solicitudes HTTP asincrónicas con JavaScript Fetch API y Django
Implementar paginación de desplazamiento infinito
Construir un sistema de seguimiento de usuarios
Cree un flujo de actividad del usuario y optimice QuerySets
Aprende a usar señales de Django
Utilice django-debug-toolbar para obtener información de depuración relevante
Contar vistas de imágenes con Redis
Cree una clasificación de imágenes con Redis
Aplicación de comercio electrónico (capítulos 8 a 11): cree una tienda en línea con todas las funciones
Construir los modelos del catálogo de productos.
Crea un carrito de compras usando sesiones de Django
Crear procesadores de contexto personalizados
Gestionar pedidos de clientes
Envíe notificaciones asincrónicas usando Celery y RabbitMQ
Apio monitorizado usando flor.
Integra Stripe para procesar pagos
Implementar un webhook para recibir notificaciones de pago de Stripe
Cree vistas personalizadas en el sitio de administración de Django
Crear acciones de administración y generar archivos CSV
Genere facturas en PDF de forma dinámica usando Weasyprint
Crear un sistema de cupones para aplicar descuentos a los pedidos.
Integra descuentos con pagos Stripe
Cree un motor de recomendación de productos utilizando Redis
Añadir internacionalización a la tienda
Generar y administrar archivos de traducción
Utilice Rosetta para gestionar las traducciones
Traducir patrones de URL y crear un selector de idioma
Traducir modelos usando django-parler
Localizar formularios usando django-localflavor
Plataforma de eLearning (capítulos 12 a 17): cree una plataforma de eLearning que incluya un CMS
Construir modelos de cursos
Crear y utilizar accesorios de datos
Utilice la herencia de modelos para crear contenido polimórfico
Cree un campo modelo personalizado para ordenar el contenido del curso
Implementar vistas de autenticación
Cree un sistema de gestión de contenidos utilizando vistas y mixins basados en clases
Restringir el acceso mediante grupos y permisos
Cree conjuntos de formularios para gestionar los contenidos del curso
Cree una funcionalidad de arrastrar y soltar para reordenar el contenido in situ usando JavaScript y Django
Usando mixins genéricos de django-braces
Implementar vistas públicas y vistas de inscripción de estudiantes
Renderice diferentes tipos de contenidos y use django-embed-video
Contenido en caché utilizando el marco de caché
Utilice los backends de caché de Memached y Redis
Monitorear Redis usando django-redisboard
Cree una API utilizando Django REST Framework
Cree serializadores para modelos y vistas API personalizadas.
Manejar la autenticación y los permisos de API
Cree conjuntos de vistas y enrutadores API
Consuma su API usando solicitudes de Python
Cree un servidor de chat en tiempo real usando Django Channels
Implementar un consumidor/cliente WebSocket usando Django y JavaScript
Utilice Redis para configurar una capa de canal
Haga que su WebSocket sea completamente asíncrono
Implementar un historial de chat manteniendo los mensajes de chat
Crear configuraciones para múltiples entornos
Configurar un entorno de producción usando Docker Compose con PostgreSQL, Redis, Nginx, uWSGI y Daphne
Sirve tu proyecto de forma segura a través de HTTPS
Utilice el marco de verificación del sistema Django
Construya un middleware personalizado
Crear comandos de gestión personalizados
Únase a la Comunidad del libro Discord para participar en las discusiones en curso o iniciar una nueva. Encontrará a otros desarrolladores leyendo el libro y ayudándose mutuamente con sus preguntas.
Django 4 por ejemplo
Django 3 por ejemplo
Django 2 por ejemplo
Django por ejemplo
Si bien la quinta edición del libro está traducida a otros idiomas, puedes encontrar traducciones de las ediciones anteriores:
Chino simplificado: Django 4实例精解
Polaco: Django 4. Praktyczne tworzenie aplikacji sieciowych. Wydania IV
Ruso: Django 4 en примерах
Portugués brasileño: Aprenda Django 3 con ejemplos
Serbocroata-bosnio: Django 3 kroz primere, prevod III izdanja
Español: Django 2
Si ya compró una versión impresa o Kindle de este libro, puede obtener una versión PDF sin DRM sin costo alguno. Simplemente haga clic en el enlace para reclamar su PDF gratuito: https://packt.link/free-ebook/9781805125457
También proporcionamos un archivo PDF que tiene imágenes en color de las capturas de pantalla/diagramas utilizados en este libro en GraphicBundle.
Página 39 El ejemplo de código Post.objects.filter(id_lt=3).count()
debe decir Post.objects.filter(id__lt=3).count()