bom galera agora nessa aula a gente vai criar os nossos formulários de login e de criar conta tá E aí nas aulas seguintes a gente vai implementando ele lá na nossa tela para criar esse formulários é bem direto ao ponto a gente vai abrir lá o nosso forms e aqui a gente vai criar esse formulários da mesma forma que a gente fez com o models a gente vai criar as classes no nosso caso que a gente criou uma classe que é um usuária clássica era uma foto agora uma forma a gente vai criar uma classe
que vai ser o meu forno por exemplo meu forme que eu vou chamar de fome login que vai ser o meu formulário você vai permitir a gente fazer o login e vou criar uma classe que vai ser por exemplo o meu forma de criar conta né aqui a gente não vai precisar editar mais nada de banco de dados porque isso aqui não é para o banco de dados isso aqui São simplesmente clássicos que a gente tá criando Para justamente poder criar as informações lá no nosso no nosso de login né então beleza como que a
gente vai criar esses caras aqui para isso né pra gente criar formulário a gente vai precisar instalar uma outra parte do Flash o flash que ele já perceberam ele funciona sempre assim você instala o flash padrão e vai usando ele Putz eu vou precisar usar formulares instalar a extensão de formulário do Flash putz você precisa usar o gerenciamento de usuário instala a extensão do Flash login para gerenciar o usuário o flash que ele é todo assim ele que a gente chama de uma estrutura flexível ele vem muito limpinho e leve para você e você vai
adicionar todos os plugins que você vai precisando nele então Flash traço WTF beleza Flash kwtf wpf é de forma a estrutura de formulário acho que a gente vai precisar usar E aí além disso a gente vai já vou aproveitar aqui também vou fazer um PIP install no e-mail underline validator porque porque a gente vai ter validação de e-mail dentro aqui do nosso formulário dentro do nosso formulário eu vou ter a validação para verificar se aquele campo de meia um campo de e-mail efetivamente Então a gente vai usar o e-mail validator se você for usar o
e-mail validator você tem que instalar Esse pacote separado mesmo então vamos lá vamos importar Agora se a galera que a gente instalou from Flash WTF imports que vai permitir a gente criar agora aqui os nossos formulários E é exatamente o que a gente vai passar aqui dentro do parênteses agora a gente também vai importar aqui do WT formas né a gente vai importar os campos porque o flash que forma ele é a estrutura da classe e os Campos São campo de texto campo de número campo de data e assim vai a gente importa eles desse
w de performance aqui então a gente vai precisar importar o campo de texto que é um stream Field campo de senha porque a gente vai ter que ter um usuário vai criar a senha do usuário peço de filtro que é aquele Campo que ele vai aparecer com as bolinhas ou com asterisco ao invés de aparecer o que você está escrevendo efetivamente e também a gente vai precisar importar os subment Fusion que nada mais é do que o botão do formulário que vai submeter e vai enviar aquele formulário e a gente consegue agora já criar o
nosso formulário daqui Então vamos pensar o que que cada formulário tem que ter de campo para ele funcionar Tá bom vamos lá de login acho que ele é bem simples ele tem que ter um e-mail ele tem que pedir uma senha e ele tem que ter um botão para submeter aquele botão aquele botão funcionar basicamente é isso que a gente precisa o formulário de criar conta ele já é um pouco maior né a gente vai ter que ter um e-mail repara não criar conta você tem que pensar tudo que você precisa login e meio sem
botão só isso que precisa se você quiser exigir alguma outra coisa você pode colocar aqui mas não precisa criar conta você tem que ter aqui todas as informações que você precisa para criar um usuário Então você tem que olhar lá no seu usuário e pensar cara Quais são as informações que eu preciso para criar um usuário eu preciso um ID Eu Preciso Dizer name eu preciso de um e-mail precisa de uma senha então no seu formulário de criação você tem que ter e-mail você tem que ter user name você tem que ter senha e dê
não precisa porque ele já vai criar sozinho e aí Além disso você tem que ter um botão de confirmação de senha né que é uma boa prática obrigar com usuário digita a senha duas vezes para digitar errado uma vez e aí ele não sabe depois qual é a senha dele e obviamente um botão de confirmação né Eu Vou Chamar esse botão aqui nos dois lados até de botão de confirmação só para a gente não achar que um botão aleatório né um botão de confirmação o nome dele fica mais intuitivo agora a gente vai começar a
Preencher esses caras aqui então olha lá o campo de e-mail ele vai ser um strainfield o campo de senha ele vai ser um password o botão ele vai ser um summerfield só que esses campos né a gente tem que ter características em cima desses caras aqui porque a gente precisa de características por exemplo o Label desses Campos ou seja qual o nome dele qual o nome que eu vou querer que exiba que apareça ele para o usuário que ele vai preencher esse cara daqui no e-mail eu vou colocar aqui e-mail na senha eu vou colocar
aqui 100 no botão de confirmação eu vou colocar aqui fazer login Então essa aqui são as informações que a gente vai exibir já para o cara E aí o que você pode fazer e eu recomendo que você faça é que você cria aqui ou validators quem são os valedeiros são os validadores é com a validar esses campo é um campo válido lembra que a gente instalou lá o e-mail validator então foi justamente para isso a gente vai importar aqui do WT forms. validators a gente vai importar vários validadores eu vou importar aqui o de taylory
quartz ou seja o usuário tem que preencher aquele campo eu vou importar o de e-mail a gente vai importar também o vale dentro de equal tio que é para verificar se um campo é igual a outro para a gente poder fazer senha e confirmação de senha para verificar se esses dois Campos são iguais beleza e vou importar também você pode importar se quiser o de tamanho para a senha dele tem que ter no mínimo 6 caracteres e no máximo 20 caracteres algo assim e vou importar também o vale Deixa Nela que quando é um erro
eu vou querer que apareça essa mensagem de erro daqui que vai estar não vai deixa melhor Beleza então vamos lá nos validator você passa sempre uma lista de validadores que você quer aplicar Quais são as listas de validadores por e-mail basicamente eu vou colocar aqui é um campo obrigatório e que ele é um validador de e-mail e é sempre assim vale dentro abre e fecha parênteses beleza no campo de senha o campo de senha eu vou dizer que ele é poderíamos parar por aqui e não usar mais nenhum outro validador dele mesmo não e a
Campo de senha né vai ser o campo sem que o usuário já preencheu mesmo e tá certo né dado que a gente vai verificar no banco está certo aquele usuário e tudo mais acho que isso aqui é o suficiente agora vamos lá forme criar conta vamos ter primeiro um streamfield que é o de e-mail E aí na hora de criar conta a gente vai fazer um validator também qual a validator desse cara os mesmos que a gente colocou ali em cima os mesmos invalideos que a gente colocou aqui em cima copiei beleza e o Johnny
ele vai ser um streamfield que eu vou botar aqui dentro pode botar nome de usuário tá pode que vem em português mesmo não tem problema não eu vou botar aqui user name acho que a galera não vou botar nome de usuário nome de usuário E aí aqui a gente vai botar só um Lady agora vamos lá senha a senha vai ser um passwordfield senha e os validators dele vão ser agora a gente vai botar aqui que ele é um e eu vou botar aqui o tamanho dele tem que ser de 6 a 20 né o
cara tem que podar pelo menos seis caracteres até 20 caracteres não vou restringir mais do que isso não isso aqui já aparece bom E aí consequentemente a minha confirmação de senha ela também é um passwordfield cujo nome é confirmação de senha e aí a diferença é que não vai dar dele é que ele tem que ser que ele é a dele mas que além disso ele tem que ser e qual e qual tipo E aí entre parênteses você passa o nome do campo o nome do Campo Tá vendo o nome do campo que ele tem
que ser igual que no nosso caso é senha Beleza então passamos aqui o nome do campo ele tem que ser igual ao tio diminui aqui para caber tudo na tela parênteses aqui no final para ele ficar certinho e aí o botão de confirmação Ele simplesmente não precisa que eu vou chamar aqui de criar conta pronto com isso galera a gente encerra a criação dos nossos formulários e do que a gente vai precisar aqui agora para criar efetivamente esses usuários aí antes da gente passar para a próxima aula eu já vou adiantar um detalhe aqui que
é o seguinte quando eu for criar o usuário eu aqui se eu não impedir aqui reparo lá no nosso modo a gente diz que o e-mail tem que ser uma formação única Como eu disse que o e-mail tem que ser uma informação única se eu não formulário não impedir ele de preencher com criar conta com uma informação única eu teria que tratar essa situação lá na minha lá na minha rota seja a gente vai ter que criar um link aqui de criar conta lá quando eu fosse olhar as informações do formulário vai ter que verificar
isso mas se você quiser você já pode travar aqui no formulário então tem sempre mais de uma forma de fazer você pode criar uma validação aqui no formulário que é um campo de Vale date esse campo de e-mail daqui lá no rounds você pode sempre na sua criar conta você validar isso mas a melhor prática mesmo você fazer isso aqui dentro do Fox então o que que eu vou fazer nessa classe criar conta a gente vai definir uma função que vai ser a função validez e é para a seguinte a função validate você sempre faz
assim validate underline e o nome do campo que você quer então eu quero validar o e-mail então o nome da função tem que ser validay underline e-mail tá primeira Por que que o nome da função tem que ser esse porque lá no Roots quando a gente for usar esse formulário a gente vai usar uma função dele que chama validay formulário quando se submeter quando ele valido formulário quando ele for submeter ele vai rodar Essas funções de validação Inclusive essa daqui por isso que a função tem esse nome validez underline e o nome do campo que
você quer fazer Beleza então vale data e-mail e aí aquilo que eu vou fazer o seguinte criar o meu usuário vai ser um usuário e a gente vai fazer uma busca agora no nosso banco de dados o usuário porque eu tô buscando o usuário só que é para esse usuário daqui essa variável usuário né que é uma classe na verdade ela vem lá do models Então a gente tem que importar ela from fique Pinterest Import models que a gente está importando do models Import usuário aí aqui então agora já foi usuário ponto só que agora
eu tô procurando o usuário pelo e-mail né então aqui não vale date e-mail ele vai receber essa função ela recebe um e-mail do usuário como padrão Tá vendo como padrão ela recebe o e-mail do usuário como padrão E aí o que que eu vou fazer eu vou criar um Filter bike eu vou filtrar por que que você está fazendo um filtro aqui lá no modo você fez um get Lira e você fez um get pelo seguinte porque lá no models a gente encontrava o formulário o usuário de acordo com o ID dele quando você tá
encontrando de acordo com o ID você usa um get quando não está encontrando de acordo com uma outra característica que não seja o ID você vai filtrar sua tabela vou filtrar minha tabela onde um e-mail do usuário lembrando igual esse campo e-mail aqui é o nome do campo e-mail que tá no usuário tá vendo o nome do campo e meio que tá no usuário vai ser igual a variável e-mail a essa variável e-mail daqui que é variável que ele preencheu no formulário Então isso que vai pegar o usuário cujo e-mail igual e-mail isso daqui vai
dar para gente uma lista de usuários que tem um e-mail igual a esse que vai ser uma lista só tem um único item eu quero pegar o primeiro item dessa lista é um ponto first é uma item uma lista que só tem um único item eu quero saber se existe esse usuário ou não E aí eu só faço assim se existir usuário ou seja se já existe um usuário com esse meio daqui tem alguma informação é específica verificando se essa lista tem alguma informação significa que já existe um usuário você já existe um usuário eu
não posso deixar ele criar outro usuário Então vou retornar um validation E qual vai ser esse você coloca aqui uma mensagem e-mail já cadastrado faça login para continuar pronto e a gente coloca essa mensagem daqui que depois se a gente quiser vai poder exibir essa mensagem lá no nosso front lá no nosso HTML se a gente quiser a gente vai poder fazer isso show galera um pequeno detalhe aqui é que aqui o campo de e-mail né esse e-mail aqui é o campo de e-mail do formulário a informação que está preenchida no campo de e-mail do
formulário em meio ponto deita tá então aqui é um cuidadozinho que até eu tinha passado em branco aqui eu dei uma olhada aqui conferir no meu gabarito que senão você quer dar um erro depois eu não colocar isso aqui é dar um erro a gente vai ter que voltar aqui para corrigir mas basicamente é o seguinte os campos do formulário a gente vai já já entrar lá no root se pegar as informações dele sempre que você for pegar uma informação você vai fazer o flash que fome criar conta ponto e-mail é o campo e meio
do forma criar conta que que você quer dele eu quero pegar as informações estão dentro dele então ponto dele então por isso que eu vou ter que e-mail ponto deita porque eu tô pegando as informações que estão no campo de e-mail esse e-mail aqui não é o texto que já tá escrito no e-mail é o campo de medo formulário porque a gente tá criando formulário a gente tá fazendo formulário Beleza a gente vai usar isso mais vezes aqui quando a gente for usar esse formulário agora na vida real digamos assim Beleza então vamos agora na
próxima aula pegar esse formulários e jogar lá para o nosso pros nossos rock