Visão Geral
Este Curso Django Comprehensive Django Development, ensina os desenvolvedores Python existentes a desenvolver aplicativos da Web full-stack usando a estrutura Django. Os alunos aprendem os fundamentos da criação de modelos, exibições e controladores simples e, em seguida, avançam para tópicos mais avançados, como administração, gerenciamento de sessões, autenticação e testes automatizados.
Objetivo
Após realizar este Curso Django Comprehensive Django Development, você será capaz de:
- Desenvolver sites baseados em conteúdo armazenado em um sistema de gerenciamento de banco de dados relacional
- Entenda o padrão do controlador de exibição de modelo (MVC) e como ele é implementado no Django
- Crie modelos Django para visualizações fáceis de modificar
- Mapear exibições para URLs
- Aproveite a interface de administração integrada
- Fornecer processamento de formulário HTML
- Integre testes automatizados com seu código
- Aproveite a interface de administração integrada
- Estenda o sistema de modelos
- Execute consultas avançadas de banco de dados
- Implementar documentação com Sphinx
- Crie aplicativos testáveis e reutilizáveis
- Migrar dados
- Forneça uma interface RESTful para modelos Django
- Crie aplicativos da Web responsivos que se adaptam dinamicamente a clientes que variam de computadores desktop com telas grandes a tablets e telefones
- Solicitações de cache para melhorar a taxa de transferência
Pre-Requisitos
- Todos os alunos devem ter um conhecimento prático de Python, HTML5 e CSS.
Materiais
Inglês + Exercícios + Lab Pratico
Conteúdo Programatico
Introduction
Django overview
- Django is a framework
- Frameworks vs Packages
- What can it do?
- What are the alternatives?
Getting Started with Django
- Sites and apps
- Shared configuration
- Minimal Django layout
- Built-in flexibility
Usingcookiecutter
- Why cookiecutter?
- cookiecutter features
- Creating a project
- Creating an app
- Customizing cookiecutter
Creating models with Django ORM
- Defining models
- Related objects
- SQL Migration
- App configuration
- Accessing models
Login for Nothing and Admin for Free
- Setting up the admin user
- Running the admin site
- Tweaking the admin interface
- Changing the admin index page
Basic Views (AKA Controllers)
- What is a view
- HttpResponse
- URL route configuration
- Shortcut: get_object_or_404()
Working with templates
- About templates
- Django template syntax
- Static files
- Loading templates
- The url tag
- Shortcut: template.render()
Querying the Models
- QuerySets
- Field lookups
- Chaining filters
- Slicing QuerySets
- Related fields
- Q objects
Enhancing Models
- Custom methods
- Complex relationships
- Overriding standard methods
Forms
- Forms overview
- GET and POST
- The Form class
- Processing the form
- Widgets
- Validation
- Forms in templates
- Beyond the basics
Debugging
- Printing to the console
- Django debug page
- Reading Django logs
- Django debug toolbar
Class-based Views
- About generic views
- Types of generic views
- Default generic views
- Class-based generic views
- List and detail views
User Authentication
- Authentication vs Authorization
- Configuring users
- Permissions
- Groups
Session Management
- Enabling sessions
- Types of session backends
- Session cookies
- Accessing sessions from views
Migrations
- Managed vs unmanaged tables
- Handling schema changes
- Using makemigrations and migrate
- Tweaking migrations
- Migrating data
Advanced configuration
- Django settings architecture
- Typical configuration
- Using 12 factor config
- Security considerations
Serving Data with a RESTful Interface
- The Django REST framework
- Serialization
- Requests and Responses
- Function-based views
- Class-based views
- What about django-tastypie?
Static File Managment
- Types of static files
- Configuring access
- Namespacing
- Templates
- Deploying from outside Django
Automated Testing
- Why create tests?
- When to create tests
- Using Django's test framework
- Using the test client
- Running tests
- Checking code coverage
Using the Cache
- Types of caches
- Setting up the cache
- Per-site and per-view caching
- Low-level API
- Cache security
Creating Reusable Apps
- Packaging
- Choosing an appropriate name
- Deploying
- Using setuptools
Documentation with Sphinx
- Description of Sphinx
- reStructured Text
- Configuring sphinx
- Creating doc files
- Using autodoc
- Generating docs
TENHO INTERESSE