Gestionar módulos y contenidos
Reordenar módulos y contenidos
Utilizar mixins de django-braces
Resumen
11. Renderizar y cachear contenido
Mostrar cursos
Añadir el registro de estudiantes
Crear una vista de registro para estudiantes
Inscribir estudiantes en cursos
Acceder al contenido del curso
Renderizar diferentes tipos de contenido
Utilizar el sistema de caché
Sistemas de caché disponibles
Instalar Memcached
Configurar la caché
Añadir Memcached al proyecto
Monitorizar Memcached
Niveles de caché
Usar la API de caché de bajo nivel
Cachear basándose en datos dinámicos
Cachear fragmentos de plantilla
Cachear vistas
Usar caché a nivel de sitio web
Resumen
12. Construir una API
Construir una API RESTful
Instalar Django REST framework
Definir serializadores
Entender los parsers y renderers
Construir vistas de listado y detalle
Crear serializadores anidados
Crear vistas personalizadas
Gestionar la autenticación de usuarios
Añadir permisos a vistas
Crear conjuntos de vistas y enrutadores
Añadir acciones adicionales a conjuntos de vistas
Crear permisos personalizados
Serializar contenidos de cursos
Resumen
13. Lanzamiento en producción
Crear un entorno de producción
Configuración para distintos entornos
Utilizar PostgreSQL
Comprobar su proyecto
Servir Django mediante WSGI
Instalar uWSGI
Configurar uWSGI
Instalar NGINX
El entorno de producción
Configurar NGINX
Servir archivos estáticos y media
Securizar conexiones con SSL
Crear un certificado SSL
Configurar NGINX para utilizar SSL
Configurar su proyecto con SSL
Crear un middleware a medida
Crear un middleware para gestionar subdominios
Servir múltiples dominios con NGINX
Comandos de administración personalizados
Resumen
Django es un potente framework web escrito en Python que fomenta un desarrollo rápido y un diseño limpio y pragmático, a la par que ofrece una curva de aprendizaje relativamente suave, lo que lo hace atractivo tanto para programadores novatos como expertos.
Este libro le guiará a través de todo el proceso del desarrollo de aplicaciones web profesionales con Django. El libro no solo cubre los aspectos más relevantes del framework, sino que también muestra cómo integrar otras tecnologías populares en proyectos Django.
Este volumen le enseñará a crear aplicaciones reales, solucionar problemas comunes e implementar las mejores prácticas mediante un enfoque paso a paso fácil de seguir.
Después de leer este libro sabrá cómo funciona Django y cómo utilizarlo para elaborar aplicaciones web prácticas con funcionalidades avanzadas.
A quién va dirigido este libro
Este libro va dirigido a programadores con conocimientos de Python que quieren aprender Django de una forma práctica. Tanto si Django es un framework nuevo para usted, como si ha trabajado con él pero quiere dominarlo, este libro es el más adecuado para usted. Le ayudará a dominar las funciones más relevantes del framework creando proyectos completos desde cero. Para leerlo es necesario estar familiarizado con conceptos de programación y tener un conocimiento básico de Python, HTML y JavaScript.
Cómo aprovechar este libro
Para sacar el máximo rendimiento a este libro, se recomienda tener un buen conocimiento de Python y conocimientos básicos de HTML y JavaScript. Antes de adentrarse en sus páginas se recomienda leer las partes 1 a 3 del tutorial de la documentación oficial de Django en https://docs.djangoproject.com/es/2.0/intro/tutorial01/.
Descarga del código asociado al libro
En la parte inferior de la primera página del libro encontrará el código de acceso que le permitirá acceder de forma gratuita a los contenidos adicionales en www.marcombo.info.
Con este libro aprenderá a desarrollar proyectos Django, listos para su funcionamiento en producción. En caso de que aún no haya instalado Django, aprenderá cómo hacerlo en la primera parte de este capítulo. En este también se verá cómo crear una sencilla aplicación de blog con Django. El propósito principal de este capítulo es tener una visión general del framework, comprender cómo interactúan los diferentes componentes entre sí y obtener las habilidades necesarias para crear un proyecto Django con funcionalidades sencillas. Este capítulo le guiará en la creación de un proyecto Django completo sin entrar en detalle en cada paso. Los diferentes componentes utilizados en este capítulo se describen en los siguientes capítulos.
Este capítulo trata los siguientes puntos:
• Instalar Django y crear un primer proyecto.
• Diseñar modelos de datos y generar migraciones.
• Crear un sitio de administración para modelos de datos.
• Utilizar QuerySets y Managers.
• Construir vistas, plantillas y URLs.
• Añadir paginación a vistas de listado.
• Usar vistas basadas en clases.
Si ya ha instalado Django puede saltar a la siguiente sección Crear mi primer proyecto . Django es un paquete Python y, como tal, puede instalarse en cualquier entorno Python. Si aún no ha instalado Django, los siguientes pasos le guiarán para instalarlo en un entorno local de desarrollo.
Django 2.0 requiere la versión de Python 3.4 o superior. En los ejemplos de este libro utilizaremos Python 3.6.5. Si usa un sistema operativo Linux o macOS X, probablemente tenga instalado Python por defecto. Si usa otro tipo de plataformas, como Windows, puede descargar un instalador de Python desde https://www.python.org/downloads/windows/.
En caso de duda, puede comprobar si Python está instalado en su ordenador introduciendo el comando python en una consola. Si tras ejecutarlo aparece un texto similar al mostrado a continuación, Python está instalado en su sistema:
Si la versión de Python instalada es inferior a la 3.4, o si no tiene Python instalado en su sistema, descargue Python 3.6.5 desde https://www.python.org/downloads/e instálelo. Si dispone de un sistema de gestión de paquetes en su sistema operativo, es recomendable realizar la instalación a través de él.
Al utilizar Python 3 no es necesario instalar una base de datos, ya que esta versión de Python incluye la base de datos SQLite en la instalación por defecto. SQLite es una base de datos ligera que se puede usar con Django para entornos de desarrollo. Para desplegar una aplicación en un entorno de producción, es necesario utilizar otro tipo de bases de datos avanzadas como PostgreSQL, MySQL u Oracle. Puede obtener más información sobre cómo configurar una base de datos con Django en https://docs.djangoproject.com/en/2.0/topics/install/#database-installation.
Crear un entorno de desarrollo Python
Es recomendable utilizar la librería virutalenv para crear un entorno de desarrollo aislado. De esta manera podremos disponer de diferentes versiones de paquetes en los distintos proyectos en los que estemos trabajando. El uso de virutalenv también ofrece independencia de la instalación de Python que haya en nuestro propio sistema. De esta manera, también se cuenta con la ventaja de no necesitar permisos de administración para la instalación de paquetes Python. Para instalar virutalenv ejecute la siguiente instrucción en una línea de comandos:
Читать дальше