diff --git a/accounts/__init__.py b/accounts/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/accounts/admin.py b/accounts/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/accounts/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/accounts/forms.py b/accounts/forms.py new file mode 100644 index 0000000..2b2591e --- /dev/null +++ b/accounts/forms.py @@ -0,0 +1,14 @@ +from django import forms +from django.contrib.auth.forms import get_user_model + +User = get_user_model() + +class AccountSignUpForm(forms.ModelForm): + password = forms.CharField(max_length=20,label='Senha',widget=forms.PasswordInput) + + class Meta: + model = User + fields = ['username', 'email', 'password'] + + + diff --git a/accounts/migrations/__init__.py b/accounts/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/accounts/models.py b/accounts/models.py new file mode 100644 index 0000000..71a8362 --- /dev/null +++ b/accounts/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/accounts/tests.py b/accounts/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/accounts/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/accounts/urls.py b/accounts/urls.py new file mode 100644 index 0000000..3b60d73 --- /dev/null +++ b/accounts/urls.py @@ -0,0 +1,4 @@ +from django.urls import path +from accounts.views import AccountCreateView + +urlpatterns = [ path('accounts/signup/', AccountCreateView.as_view(), name='signup')] diff --git a/accounts/views.py b/accounts/views.py new file mode 100644 index 0000000..8add896 --- /dev/null +++ b/accounts/views.py @@ -0,0 +1,24 @@ +from django.shortcuts import render +from django.views.generic.edit import CreateView +from django.urls import reverse_lazy +from django.contrib.auth.hashers import make_password +from django.contrib.auth.forms import get_user_model +from django.contrib import messages +from accounts.forms import AccountSignUpForm + +User = get_user_model() + +class AccountCreateView(CreateView): + model = User + form_class = AccountSignUpForm + template_name = 'registration/signup_from.html' + form_class = AccountSignUpForm + success_url = reverse_lazy('login') + sucess_message = 'Conta criada com sucesso!' + + def form_valid(self, form): + form.instance.password = make_password(form.cleaned_data['password']) + form.save() + messages.success(self.request, 'Conta criada com sucesso!') + return super(AccountCreateView, self).form_valid(form) + diff --git a/db.sqlite3 b/db.sqlite3 index e69de29..e8ad16f 100644 Binary files a/db.sqlite3 and b/db.sqlite3 differ diff --git a/polls/__pycache__/urls.cpython-314.pyc b/polls/__pycache__/urls.cpython-314.pyc index bbe1f95..3dd3a09 100644 Binary files a/polls/__pycache__/urls.cpython-314.pyc and b/polls/__pycache__/urls.cpython-314.pyc differ diff --git a/polls/urls.py b/polls/urls.py index c08c2df..3f93ca2 100644 --- a/polls/urls.py +++ b/polls/urls.py @@ -2,6 +2,7 @@ from django.urls import path from polls import views urlpatterns = [ - path('index', views.index, name='index'), - path('ola', views.ola, name='ola') + path('', views.index, name='home'), + path('index/', views.index, name='index'), + path('ola/', views.ola, name='ola'), ] \ No newline at end of file diff --git a/templates/_layout1.html b/templates/_layout1.html index 7c61dd7..432dba8 100644 --- a/templates/_layout1.html +++ b/templates/_layout1.html @@ -1,65 +1,65 @@ -{# Curso Django Framework do Zero: https://www.youtube.com/playlist?list=PLFOqHo8oIjzewcT23HCxJV0xWO451CTJe #} -{% extends '_base.html' %} {# herda tudo que já tem em _base.html #} -{% load static %} {# carrega o módulo static para fornecer arquivos estáticos #} - -{# - cada bloco abaixo como o mesmo nome terá o conteúdo - substituído em _base.html, se não existir aqui, permanecerá - com o mesmo conteúdo original herdado de _base.html -#} -{% block head_title %} - Django Framework +{% extends '_base.html' %} +{% load static %} + +{% block head_title %} + Django Framework {% endblock %} -{% block css %} - {# Bootstrap CSS #} - - - {# CSS do Projeto #} - {# o comando "static" traduz para o caminho correto para os arquivos estáticos #} - +{% block css %} + + + + {% endblock %} - {% block header %} -
Conteúdo padrão...
+Conteúdo padrão...
{% endblock content %} -