Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

<p>Formulários com Django</p><p>Apresentação</p><p>De acordo com o time de desenvolvimento, o Django utiliza o padrão model-template-view, por</p><p>isso pode ser usado para desenvolver uma aplicação Web completa, desde o back end até o front</p><p>end, em que o framework gerencia as rotas das requisições e faz o redirecionamento para as views</p><p>apropriadas.</p><p>As classes de modelo descrevem os dados que serão gerenciados pela aplicação e, no caso da</p><p>geração automática de formulários, são a base para a criação dos componentes que serão</p><p>apresentados na tela e que terão seus dados manipulados pelo usuário, à medida que são</p><p>preenchidos e submetidos. Já a camada view é responsável pela descrição dos métodos que</p><p>processam as requisições, formulam as respostas e as enviam de volta para os usuários.</p><p>Nesta Unidade de Aprendizagem, você aprenderá sobre os formulários no framework Django, como</p><p>eles são criados, as classes Python dos modelos e controle, além do processo de geração</p><p>automática dos formulários.</p><p>Bons estudos.</p><p>Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados:</p><p>Reconhecer a criação de formulários.•</p><p>Implementar o arquivo forms.py.•</p><p>Gerar um formulário automaticamente. •</p><p>Desafio</p><p>A camada de modelos é uma das três camadas essenciais na arquitetura de soluções Web</p><p>desenvolvidas em Django. Nessa camada são descritas as características e os comportamentos das</p><p>entidades que compõem as aplicações, bem como a lógica de acesso aos dados do sistema.</p><p>Já um modelo é equivalente a uma tabela no banco de dados. É uma classe que representa um</p><p>objeto que herda de django.db.models.Model, em que cada atributo é utilizado para criar um campo</p><p>da tabela e do formulário, quando gerado de forma automática.</p><p>Esse modelo deve ser utilizado para a criação automática de um formulário que contenha a opção</p><p>de nome do personagem, um campo de seleção para o usuário, definição de qual é o atributo</p><p>primário, com as opções Inteligência, Agilidade e Força; além de três campos numéricos inteiros,</p><p>um para a propriedade Inteligência, outro para Agilidade e o último para Força.</p><p>Infográfico</p><p>O processo de manipulação de formulários Django pode ser descrito em um diagrama de fluxo, que</p><p>começa no momento em que o navegador realiza a requisição de uma página com formulário. O</p><p>que torna o processo um pouco mais complicado é o fato de o servidor também precisar processar</p><p>os dados dos campos preenchidos pelo usuário e recarregar a página no caso de ocorrer algum</p><p>erro.</p><p>Veja no Infográfico a seguir o fluxo do processo de manipulação de formulários Django em um</p><p>diagrama de fluxo.</p><p>Aponte a câmera para o</p><p>código e acesse o link do</p><p>conteúdo ou clique no</p><p>código para acessar.</p><p>https://statics-marketplace.plataforma.grupoa.education/sagah/7ebbd414-b416-4ef2-8cfa-96f39f166c5c/3d0c43b3-6119-43c2-a4e6-7958883311ca.png</p><p>Conteúdo do livro</p><p>Para se tornar desenvolvedor Web utilizando a linguagem Python, é necessário conhecer</p><p>o framework Django, além de HTML e CSS. A linguagem Python é considerada de fácil</p><p>entendimento devido a sua sintaxe simples e, por consequência, está entre as linguagens mais</p><p>populares para a criação de aplicações Web.</p><p>Já o framework Django, aliado ao conceito de orientação a objetos, torna o desenvolvimento Web</p><p>com Python mais consistente, especialmente para aplicações de médio a grande porte, além de</p><p>facilitar o trabalho do programador com a possibilidade de criar aplicativo escrevendo menos</p><p>código HTML para geração de formulários.</p><p>No capítulo Formulários com Django, da obra Programação back end I, você vai aprender a respeito</p><p>dos formulários Django, desde a criação da estrutura básica dos formulários, a implementação dos</p><p>arquivos Python, como o forms.py, até a geração automática dos formulários e como salvar seus</p><p>dados.</p><p>Boa leitura.</p><p>PROGRAMAÇÃO</p><p>BACK END I</p><p>Fabiano Berlinck Neumann</p><p>Formulários com Django</p><p>Objetivos de aprendizagem</p><p>Ao final deste texto, você deve apresentar os seguintes aprendizados:</p><p>� Reconhecer a criação de formulários.</p><p>� Implementar o arquivo forms.py.</p><p>� Gerar um formulário automaticamente.</p><p>Introdução</p><p>Python é considerada uma linguagem de programação de fácil entendi-</p><p>mento e sintaxe simples, sendo utilizada em diversas áreas na criação de</p><p>pequenas aplicações. Quando a linguagem é utilizada em um framework</p><p>Web como o Django, é possível criar aplicações completas, com a proposta</p><p>de tornar o desenvolvimento mais ágil, da concepção à conclusão, assim</p><p>como promover cuidados em relação à segurança e à escalabilidade.</p><p>Além disso, o Django é considerado um dos mais populares entre os</p><p>frameworks existentes.</p><p>Por conta de sua arquitetura, para que seja possível criar aplicações</p><p>no Django, é necessário que o desenvolvedor siga algumas orientações</p><p>e convenções. Conhecer padrões como o model-view-controller e para-</p><p>digmas como a programação orientada a objetos pode acelerar a curva</p><p>de aprendizado e tornar mais simples a manipulação da estrutura de</p><p>arquivos e pastas do projeto, bem como a ordem do código em cada</p><p>um destes arquivos.</p><p>Neste capítulo, você vai aprender sobre a criação de páginas com</p><p>formulários, desde a base para todos os tipos de página até a estrutura</p><p>específica do formulário. Além disso, você vai saber como implementar o</p><p>arquivo que contém o modelo que representa os objetos do formulário</p><p>e como gerar um formulário automaticamente.</p><p>Criação de formulários</p><p>Na programação de páginas com formulários no Django, assim como em</p><p>outros frameworks Web, os desenvolvedores devem escrever o código em</p><p>HTML e CSS para criar, estruturar e estilizar as páginas e seus componentes.</p><p>Entretanto, de acordo com Pinheiro (2019), neste framework é possível diminuir</p><p>boa parte da escrita em HTML e CSS com a geração de formulários de forma</p><p>automatizada a partir de códigos escritos em Python.</p><p>Os exemplos de código deste capítulo são modificações do projeto exem-</p><p>plificado no tutorial Django Girls e abordam trechos de uma aplicação que</p><p>gerencia uma lista de tarefas do usuário, especificamente, a tela com formulário</p><p>de criação e edição de uma das tarefas. O trecho de código a seguir repre-</p><p>senta o código do arquivo base das telas, chamado base.html, que contém</p><p>os componentes que, com o uso do Django, não precisam ser repetidos na</p><p>apresentação do formulário de criação e edição da tarefa, da lista de tarefas</p><p>e de seus detalhes.</p><p>{% load static %}</p><p>Minha Lista de Tarefas</p><p>Minha Lista de Tarefas</p><p>Formulários com Django2</p><p>{% block content %}</p><p>{% endblock %}</p><p>Como é possível observar no código HTML, o título da aba do navegador</p><p>é definido como Minha Lista de Tarefas na tag ; as duas</p><p>primeiras tags são utilizadas para adicionar o Bootstrap; a terceira</p><p>tag para adicionar a fonte Lobster e; a quarta, para adicionar a</p><p>referência ao arquivo CSS de estilos, que terá seu valor convertido para um</p><p>código Python exigido pelo Django para referenciar arquivos estáticos como</p><p>o de estilos. Também serão adicionados códigos Python para carregar a área</p><p>de conteúdo.</p><p>Dentro do corpo da página existem dois grandes blocos , um com</p><p>a classe page-header e outro com a classe content container, que</p><p>representam o cabeçalho da página e a área de conteúdo, respectivamente.</p><p>No cabeçalho existem dois links: o primeiro envolve o ícone com o sinal de</p><p>adição e possui referência em Python para a rota que carrega o formulário</p><p>de nova tarefa para a área de conteúdo. O segundo está dentro da tag ,</p><p>o que permite ao usuário clicar no título para carregar a lista de tarefas.</p><p>Saiba mais sobre o Bootstrap e conheça os componentes que podem ser aplicados</p><p>por meio das classes das tags no link a seguir.</p><p>https://qrgo.page.link/1iKcS</p><p>3Formulários com Django</p><p>Tanto no arquivo base quanto no arquivo do formulário, apresentado a</p><p>seguir e nomeado como task_edit.html, o formulário escrito em HTML</p><p>não exige o conhecimento da linguagem Python ou do framework Django para</p><p>ser compreendido, apesar de já conter algumas linhas em Python.</p><p>Nova Tarefa</p><p>Criar</p><p>A tag é utilizada com o método POST e possui um botão com</p><p>estilos do Bootstrap para criar a nova tarefa. O código dos campos da tarefa</p><p>não precisa ser escrito, já que os componentes serão criados automaticamente</p><p>com o auxílio do framework Django e do código Python, que será adicionado</p><p>a este arquivo nos tópicos a seguir.</p><p>Além disso, é necessário criar uma função no arquivo views.py, que</p><p>recebe uma requisição como parâmetro para renderizar os templates dos</p><p>arquivos HTML, conforme apresentado a seguir.</p><p>Arquivo views.py:</p><p>from .forms import TaskForm</p><p>def task _ new(request):</p><p>form = TaskForm()</p><p>return render(request, 'task _ edit.html', {'form': form})</p><p>A classe TaskForm() é atribuída à variável form para criar um novo</p><p>formulário de tarefas e, assim, passá-lo para o template.</p><p>Implementação do arquivo forms.py</p><p>Para que o formulário seja criado automaticamente, além dos arquivos HTML</p><p>é necessário implementar os formulários e os modelos da aplicação, ambos em</p><p>Python, nos arquivos forms.py e models.py, respectivamente. Além disso,</p><p>é necessário adicionar as novas rotas no arquivo urls.py para que o Django</p><p>reconheça quais arquivos deve carregar e apresentar na área de conteúdo do</p><p>arquivo base. Os três arquivos são apresentados a seguir.</p><p>Formulários com Django4</p><p>Arquivo models.py:</p><p>from django.db import models</p><p>class Task(models.Model):</p><p>title = models.CharField(max _ length=20, null=False)</p><p>description = models.TextField()</p><p>A classe tarefa (Task) possui duas propriedades, uma para o título e outra</p><p>para o texto da descrição. A primeira é configurada como um campo obrigatório</p><p>de texto, de no máximo 20 caracteres, e a segunda, como um campo de texto</p><p>não obrigatório, sem limite fixo.</p><p>Arquivo forms.py:</p><p>from django import forms</p><p>from .models import Task</p><p>class TaskForm(forms.ModelForm):</p><p>class Meta:</p><p>model = Task</p><p>fields = ('title', 'description',)</p><p>Seria possível criar o formulário inteiro desde o seu princípio, mas neste</p><p>exemplo utiliza-se o ModelForm, que usa o modelo para salvar o resultado do</p><p>formulário, como o título e a descrição de cada tarefa. Observe que os valores</p><p>da variável fields possuem o mesmo nome dos parâmetros do modelo Task.</p><p>Arquivo urls.py:</p><p>from django.urls import path</p><p>from . import views</p><p>urlpatterns = [</p><p>path('', views.task _ list, name='task _ list'),</p><p>path('task//', views.task _ detail, name='task _ detail'),</p><p>path('task/new/', views.task _ new, name='task _ new'),</p><p>]</p><p>5Formulários com Django</p><p>Neste arquivo foram configuradas as rotas possíveis para o usuário navegar</p><p>na aplicação por meio do vetor urlpatterns e dos seus dois caminhos</p><p>(path). A primeira rota possui o caminho vazio e representa a rota padrão</p><p>da aplicação, que também pode ser substituída por uma barra (/). A segunda</p><p>rota diz respeito ao endereço que apresenta ao detalhe de uma tarefa, em que</p><p>são apresentadas as informações de uma delas sem o formulário. Já a terceira</p><p>se trata da rota do formulário que é criado automaticamente neste capítulo.</p><p>Geração automática do formulário</p><p>Quando uma aplicação possui muitos formulários e a maioria deles é padrão,</p><p>programar as telas pode ser demorado, cansativo e, de certa forma, repetitivo,</p><p>especialmente se cada formulário possuir múltiplos campos. Como apresentado</p><p>anteriormente, no Django os formulários podem ser criados automaticamente</p><p>a partir das classes modelo e suas definições, sem haver necessidade de se</p><p>escrever todo o HTML.</p><p>De acordo com a documentação oficial do projeto Django, se a aplicação</p><p>precisar de banco de dados, possivelmente ela terá formulários que mapeiam</p><p>esses modelos e suas propriedades, que definem os campos do modelo para</p><p>automatizar o processo por meio da criação das classes de formulário a partir</p><p>dos modelos Django.</p><p>O controle da classe de formulário e a renderização dos componentes são</p><p>feitos pela camada view do Django (neste caso, com o arquivo views.py),</p><p>suas propriedades e seus métodos, conforme apresentado a seguir.</p><p>from .forms import TaskForm</p><p>def task _ new(request):</p><p>form = TaskForm()</p><p>return render(request, 'task _ edit.html', {'form': form})</p><p>Com o TaskForm() é possível instanciar um novo formulário de tarefas</p><p>na variável form e passá-lo para o template como terceiro parâmetro do</p><p>método render().</p><p>Formulários com Django6</p><p>Além disso, para o Django gerenciar o que será renderizado e seu local, é</p><p>necessário adicionar o código Python no arquivo task_edit.html para</p><p>informar qual é o arquivo base com {% extends 'base.html' %} e</p><p>qual é o bloco de conteúdo com início em {% block content %} e fim</p><p>em {% endblock %}, conforme apresentado a seguir.</p><p>{% extends 'base.html' %}</p><p>{% block content %}</p><p>Nova Tarefa</p><p>{% csrf _ token %}</p><p>{{ form.as _ p }}</p><p>Save</p><p>{% endblock %}</p><p>Para exibir o formulário, utiliza-se o {{ form.as_p }} e, para a</p><p>segurança, o {% csrf_token %}. Entretanto, desta forma os dados não</p><p>persistem, ou seja, não são armazenados no banco de dados. Para isso é</p><p>necessário verificar se o formulário é válido com o método is_valid()</p><p>e salvá-lo com o método form.save() na classe de controle views.py,</p><p>conforme apresentado a seguir.</p><p>from django.shortcuts import redirect</p><p>def task _ new(request):</p><p>if request.method == "POST":</p><p>form = TaskForm(request.POST)</p><p>if form.is _ valid():</p><p>task = form.save(commit=False)</p><p>task.save()</p><p>return redirect('task _ detail', pk=task.pk)</p><p>else:</p><p>form = TaskForm()</p><p>return render(request, 'task _ edit.html', {'form': form})</p><p>7Formulários com Django</p><p>Com o código anterior é possível guardar os dados digitados pelo usuário,</p><p>quando se trata de uma tarefa nova, além de redirecionar para a página de</p><p>detalhe da tarefa com o objeto tarefa criado por conta do redirect('task_</p><p>detail', pk=task.pk, caso o método da requisição seja POST, de</p><p>forma que o identificador do objeto criado é passado para o atributo pk, que</p><p>representa o campo de chave primária (primary key).</p><p>Para que seja possível editar uma tarefa no formulário, é necessário adicio-</p><p>nar o método task_edit, bastante parecido com o método de nova tarefa,</p><p>também na classe views.py. Observe o código apresentado a seguir.</p><p>def task _ edit(request, pk):</p><p>task = get _ object _ or _ 404(Task, pk=pk)</p><p>if request.method == "POST":</p><p>form = TaskForm(request.POST, instance=task)</p><p>if form.is _ valid():</p><p>task = form.save(commit=False)</p><p>task.save()</p><p>return redirect('task _ detail', pk=task.pk)</p><p>else:</p><p>form = TaskForm(instance=task)</p><p>return render(request, 'task _ edit.html', {'form': form})</p><p>Neste método, a variável task recebe o resultado do método get_ob-</p><p>ject_or_404(),</p><p>que recebe Task como primeiro parâmetro e pk como</p><p>segundo, que é a chave primária do objeto. Esse resultado pode ser o objeto</p><p>em questão ou o erro 404, caso não encontre. Em seguida, a variável task é</p><p>utilizada na criação do formulário de edição como referência para a instância</p><p>do objeto do formulário.</p><p>Caso seja necessário verificar se o usuário está autenticado, é possível</p><p>utilizar o comando a seguir entre as tags que devem aparecer se o usuário</p><p>tiver permissão para visualizar.</p><p>{% if user.is _ authenticated %} ... {% endif %}</p><p>Formulários com Django8</p><p>Caso o desenvolvedor também queira armazenar quem foi o usuário que</p><p>criou a tarefa, é necessário adicionar a propriedade a seguir no arquivo mo-</p><p>dels.py, especificamente, na classe Task.</p><p>author = models.ForeignKey(settings.AUTH _ USER _ MODEL, on _</p><p>delete=models.CASCADE)</p><p>Além disso, para salvar o usuário na submissão do formulário, é necessário</p><p>adicionar a linha de código a seguir, que recupera o usuário que fez a requi-</p><p>sição nos métodos task_new() e task_edit() do arquivo views.py,</p><p>dentro do bloco do condicional form.is_valid(),característica comum</p><p>tanto à criação de uma nova tarefa quanto à edição de uma tarefa existente.</p><p>if form.is _ valid():</p><p>task = form.save(commit=False)</p><p>task.author = request.user</p><p>task.save()</p><p>return redirect('task _ detail', pk=task.pk)</p><p>Desta forma, é possível criar a parte do projeto que gera formulários au-</p><p>tomaticamente para os primeiros cadastros na base de dados, populando o</p><p>banco antecipadamente, como no caso de colaboradores cadastrando produtos e</p><p>serviços enquanto as outras partes do sistema ainda estão em desenvolvimento,</p><p>possibilitando que tanto o framework quanto os processos de desenvolvimento</p><p>do negócio em que o aplicativo está inserido sejam ágeis.</p><p>Neste capítulo foi apresentada a criação de um formulário automático com o Django.</p><p>No entanto, é possível que você queira criar um aplicativo em React ou React Native e</p><p>precise conectar o servidor ao projeto mobile. Você pode utilizar o Django Rest para</p><p>criar a API, como é possível observar nos links a seguir.</p><p>https://qrgo.page.link/AZMfX</p><p>https://qrgo.page.link/QFaFZ</p><p>9Formulários com Django</p><p>PINHEIRO, F. Criando formulários automaticamente com Django. TreinaWeb, São Paulo,</p><p>16 jan. 2019. Disponível em: https://www.treinaweb.com.br/blog/criando-formularios-</p><p>-automaticamente-com-django/. Acesso em: 17 nov. 2019.</p><p>Leituras recomendadas</p><p>CREATING forms from models. Django Software Foundation, [S. l.], 2019. Disponível</p><p>em: https://docs.djangoproject.com/en/2.2/topics/forms/modelforms/. Acesso em:</p><p>17 nov. 2019.</p><p>DJANGO Web Framework (Python). MDN Web Docs, Mountain View, 2019. Disponível</p><p>em: https://developer.mozilla.org/pt-BR/docs/Learn/Server-side/Django. Acesso em:</p><p>17 nov. 2019.</p><p>FORMS. Bootstrap Team, [S. l.], [2019]. Disponível em: https://getbootstrap.com/docs/4.0/</p><p>components/forms/. Acesso em: 17 nov. 2019.</p><p>FORMULÁRIOS do Django. Django Girls Foundation, London, [2019]. Disponível em:</p><p>https://tutorial.djangogirls.org/pt/django_forms/. Acesso em: 17 nov. 2019.</p><p>FULL Stack React & Django [1] - Basic REST API. [S. l.: S. n.], 2019. 1 vídeo (22 min 41 s).</p><p>Publicado pelo canal Traversy Media. Disponível em: https://youtu.be/Uyei2iDA4Hs.</p><p>Acesso em: 17 nov. 2019.</p><p>GUIA de Python com Django. DevMedia, Rio de Janeiro, 2019. Disponível em: https://</p><p>www.devmedia.com.br/guia/programador-python-com-django/38791. Acesso em:</p><p>17 nov. 2019.</p><p>TUTORIAL Django Girls. Django Girls Foundation, London, [2019]. Disponível em: https://</p><p>tutorial.djangogirls.org/pt/. Acesso em: 17 nov. 2019.</p><p>TUTORIAL: Django REST with React (Django 2.0 and a sprinkle of testing). Valentino</p><p>Gagliardi, [S. l.], 12 Mar. 2018. Disponível em: https://www.valentinog.com/blog/drf/.</p><p>Acesso em: 17 nov. 2019.</p><p>Referência</p><p>Os links para sites da Web fornecidos neste capítulo foram todos testados, e seu fun-</p><p>cionamento foi comprovado no momento da publicação do material. No entanto, a</p><p>rede é extremamente dinâmica; suas páginas estão constantemente mudando de</p><p>local e conteúdo. Assim, os editores declaram não ter qualquer responsabilidade</p><p>sobre qualidade, precisão ou integralidade das informações referidas em tais links.</p><p>Formulários com Django10</p><p>Dica do professor</p><p>Você sabia que o framework Python dispõe de uma arquitetura de alto nível? Isso significa que você</p><p>poderá colocar os seus projetos Python na Web sem se preocupar com a infraestrutura de código</p><p>necessária para isso. Outro ponto forte do Django está relacionado com a sua forma de trabalhar</p><p>com formulários.</p><p>Na Dica do Professor você verá uma introdução aos formulários Django, verificar o que são e para</p><p>que servem os ModelForms e descobrir como funciona a validação de formulários.</p><p>Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.</p><p>https://fast.player.liquidplatform.com/pApiv2/embed/cee29914fad5b594d8f5918df1e801fd/1e59f8776ed4e1c0389b3f9682ba0e1a</p><p>Exercícios</p><p>1) No Django, para que seja possível importar arquivos estáticos em uma página Web, é</p><p>necessário seguir algumas recomendações e padrões.</p><p>Marque a opção que representa o trecho de código que precisa ser adicionado no começo</p><p>do documento HTML para que seja possível carregar documentos estáticos com o Django.</p><p>A) {% load static %}.</p><p>B) {% load_static %}.</p><p>C) {% static_files %}.</p><p>D) {% load files %}.</p><p>E) {% static load %}.</p><p>2) Com a camada view do Django, é possível fazer o controle das rotas do aplicativo e</p><p>redirecionar o usuário para outras telas.</p><p>Marque a opção que representa o trecho de código a ser adicionado no atributo href de uma</p><p>tag de link em um código HTML.</p><p>A) {% route ‘nome_rota’ %}.</p><p>B) {% url ‘nome_rota’ %}.</p><p>C) {% path ‘nome_rota’ %}.</p><p>D) {$ path ‘nome_rota’ $}.</p><p>E) {$ url ‘nome_rota’ $}.</p><p>3) Com o framework Django, é possível criar formulários de forma automatizada.</p><p>Marque a opção que representa a camada em que são descritos os componentes do</p><p>formulário, os quais são a base para a criação automática do formulário.</p><p>A) Front end.</p><p>B) View.</p><p>C) Template.</p><p>D) Model.</p><p>E) Middleware.</p><p>4) Quando o usuário interage com um formulário criado de maneira automatizada pelo Django,</p><p>objetos do tipo formulário de um modelo são instanciados.</p><p>Marque a opção que representa a classe padrão para criação das classes e que usa o modelo</p><p>para salvar o resultado do formulário:</p><p>A) ObjectModel.</p><p>B) FormModel.</p><p>C) ModelForm.</p><p>D) ModelMeta.</p><p>E) MetaForm.</p><p>5) Quando se utiliza uma classe modelo como base para descrição das propriedades que</p><p>precisam ser processadas para a geração automática dos formulários, é necessário utilizar</p><p>métodos de models.</p><p>Marque a opção que representa um campo de texto obrigatório com limite máximo de 20</p><p>caracteres.</p><p>A) models.CharField(max_legth=20, notNull)</p><p>B) models.TextField(char text[20], null=false)</p><p>C) models.CharField(char text[20], null=false)</p><p>D) models.TextField(max_length=20, notNull)</p><p>E) models.CharField(max_length=20, null=false)</p><p>Na prática</p><p>Os formulários HTML são os principais componentes apresentados nos sites modernos, desde sites</p><p>simples até sistemas Web complexos com múltiplas páginas. A principal tag para definir o elemento</p><p>do formulário e seus componentes internos é a , que pode envolver elementos de diversos</p><p>tipos, como campos de e-mail, data, texto, caixas de seleção, entre outras. Mesmo assim, com o</p><p>Django é possível diminuir significativamente a quantidade de código HTML escrita por conta dos</p><p>geradores de formulários automáticos a partir das classes de modelo do framework.</p><p>Neste Ná Prática, você vai aprender como transformar um formulário feito completamente em</p><p>HTML para o código Python no framework Django, que permite gerar o formulário</p><p>automaticamente.</p><p>Aponte a câmera para o</p><p>código e acesse o link do</p><p>conteúdo ou clique no</p><p>código para acessar.</p><p>https://statics-marketplace.plataforma.grupoa.education/sagah/5c48e5a7-d934-47d0-b1e7-b9e7c33971ab/480b03ed-9216-434e-9ce9-4b1b4e2df071.png</p><p>Saiba +</p><p>Para ampliar o seu conhecimento</p><p>a respeito desse assunto, veja abaixo as sugestões do professor:</p><p>Guia de Python com Django</p><p>Artigo que trata dos principais conteúdos sugeridos para quem está começando os estudos sobre</p><p>Django, com exemplos de cursos introdutórios em Python e Django, acesso a dados, autenticação e</p><p>autorização, APIs RESTful, entre outros.</p><p>Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.</p><p>Hands-On Django! Parte 5 - Inserindo e excluindo dados -</p><p>Trabalhando com formulários</p><p>Vídeo de uma série que apresenta um guia para Django a respeito da criação do projeto, criação de</p><p>páginas, criação de usuários, entre outros. Neste vídeo, é apresentada a parte de inserção e de</p><p>exclusão de dados por meio de formulários.</p><p>Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.</p><p>Configurando um projeto Django com React</p><p>Veja neste tutorial como criar um projeto Django básico com a estrutura necessária para utilizar o</p><p>React com o Webpack, com a comunicação entre o Django e o React em JSON por meio de uma</p><p>API.</p><p>https://www.devmedia.com.br/guia/programador-python-com-django/38791</p><p>https://www.youtube.com/embed/LBHgkFayIbQ</p><p>Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.</p><p>https://medium.com/labcodes/configurando-um-projeto-django-com-react-1292abded7a5</p>

Mais conteúdos dessa disciplina