Programa - Django - 2022 (Para Alumnos)
Programa - Django - 2022 (Para Alumnos)
2022
Presentación del curso
● Bienvenida, presentación del curso, objetivo, lineamientos de cursada, herramientas a utilizar,
proyecto integrador en grupos.
Introducción
Arquitectura
● Conceptos básicos de arquitectura web.
● Arquitectura cliente / servidor.
● Back-end y front-end.
● Protocolos http/https, especificación WSGI.
GIT
● Repositorios locales y remotos
● Comandos básicos de git
● Workflows de trabajo.
Python
Python
● Repaso de fundamentos del lenguaje, condicionales e iteradores.
● Debug en VS Code, tipos de datos, librerías y funciones.
● Diseño de clases en el paradigma orientado a objetos. Asociación, agregación, composición y
herencia entre clases. Polimorfismo
● Abstracción, encapsulamiento, y clases abstractas.
● Excepciones.
● Módulos, paquetes, ambientes virtuales
Integración
● Resolución de problemas para la integración de contenidos.
Django
Introducción
● Python Frameworks.
● Patrón MVC y MVT.
● Estructura de directorios de Django.
● UrlDispatcher
Django: Views
● Urls en Django. Múltiples vistas y urls.
● HttpResponse.
● Urls y vistas parametrizadas.
● Vistas genéricas y html desde Django.
Django: Templates
● Django template system.
● Cargando templates, configuraciones.
● Integrando vistas y templates.
● Context, variables, filter, tags, comments.
● Herencia de templates, plantilla base.
● Includes, bloques.
1
● Condicionales, bucles.
● Vinculando estáticos con templates (css, js, imágenes, etc).
● Incorporando bootstrap.
Integración
● Resolución de problemas para la integración de contenidos.
Django: Forms
● Creación de formularios. Get y post en formularios.
● Integración con templates y vistas.
● Tipos de campos en formularios, validaciones en formularios (is_valid, cleaned_data)
Base de Datos
● Repaso de base datos.
● Pasando de un modelo de clases a un modelo de datos relacional.
● PostgreSQL, PgAdmin, Lenguaje DDL, Lenguaje DML
● Claves primarias y foráneas, relaciones.
● ORM, Django, ORM, introducción a modelos en Django.
Proyecto Integrador
● Exposiciones en grupo sobre los proyectos integradores grupales.
Django: Models
● Models first vs Database first. Creación de modelos.
● Campos y atributos (DjangoFields).
● Migraciones.
● Herencia y relaciones entre modelos.
● QuerySets (lazyloading).
● Crud sobre modelos.
● Vistas basadas en clases
● Integración de modelos con vistas y templates.
Django: ModelForm
● Asociar modelos a formularios
● Seleccionando campos de modelos para el formulario
● Herencia de formularios.
● Sobreescritura de métodos init y save.
Integración
● Resolución de problemas para la integración de contenidos.
Django: Admin
● Configurando el DjangoAdmin
● Creación de superusuario e integración con modelos.
● Personalizando el DjangoAdmin.
● Introducción a la autenticación.
Django: Authentication
● Autenticación y autorización.
● Usuarios y grupos.
● Vistas y templates de autenticación.
● Registro y login de usuarios. Reinicio de contraseña. Logout de usuarios.
● Decoradores, permisos en vistas y templates.
2
Integración
● Resolución de problemas para la integración de contenidos.
Django: Despliegue
● Tipos de infraestructuras (IaaS, PaaS, SaaS).
● Load balancer.
● Python Anywhere, Heroku, Amazon EC2, Docker.
Proyecto Integrador
● Exposiciones de los proyectos integradores por grupo.