You've already forked Curso-lenguaje-python
@@ -7,3 +7,5 @@
|
||||
<input type="submit" value="Ingresar">
|
||||
|
||||
</form>
|
||||
|
||||
<p>¿No tienes cuenta?<a href="{% url 'registro' %}">Registrate</a></p>
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
<h1>Registro</h1>
|
||||
|
||||
<form method="post" action="">
|
||||
{% csrf_token %}
|
||||
{{form.as_p}}
|
||||
|
||||
<input type="submit" value="Registrar">
|
||||
|
||||
</form>
|
||||
|
||||
<p>Ya tienes cuenta?<a href="{% url 'login' %}">Registrate</a></p>
|
||||
@@ -1,11 +1,12 @@
|
||||
from django.urls import path
|
||||
from .views import ListaPendientes, DetalleTarea, CrearTarea, EditarTarea, EliminarTarea, Logueo
|
||||
from .views import ListaPendientes, DetalleTarea, CrearTarea, EditarTarea, EliminarTarea, Logueo, PaginaRegistro
|
||||
from django.contrib.auth.views import LogoutView
|
||||
|
||||
|
||||
urlpatterns = [
|
||||
path('', ListaPendientes.as_view(), name='tareas'),
|
||||
path('login/', Logueo.as_view(), name='login'),
|
||||
path('registro/', PaginaRegistro.as_view(), name='registro'),
|
||||
path('logout/', LogoutView.as_view(next_page='login'), name='logout'),
|
||||
path('tarea/<int:pk>', DetalleTarea.as_view(), name='tarea'),
|
||||
path('crear-tarea/', CrearTarea.as_view(), name='crear-tarea'),
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
from django.shortcuts import render
|
||||
from django.shortcuts import render, redirect
|
||||
from django.views.generic.list import ListView
|
||||
from django.views.generic.detail import DetailView
|
||||
from django.views.generic.edit import CreateView, UpdateView, DeleteView
|
||||
from django.views.generic.edit import CreateView, UpdateView, DeleteView, FormView
|
||||
from django.contrib.auth.forms import UserCreationForm
|
||||
from django.contrib.auth import login
|
||||
from django.contrib.auth.views import LoginView
|
||||
from django.contrib.auth.mixins import LoginRequiredMixin
|
||||
from django.urls import reverse_lazy
|
||||
@@ -19,6 +21,26 @@ class Logueo(LoginView):
|
||||
return reverse_lazy('tareas')
|
||||
|
||||
|
||||
class PaginaRegistro(FormView):
|
||||
template_name = 'base/registro.html'
|
||||
form_class = UserCreationForm
|
||||
redirect_authenticated_user = True
|
||||
success_url = reverse_lazy('tareas')
|
||||
|
||||
def form_valid(self, form):
|
||||
|
||||
usuario = form.save()
|
||||
if usuario is not None:
|
||||
login(self.request, usuario)
|
||||
|
||||
return super(PaginaRegistro, self).form_valid(form)
|
||||
|
||||
def get(self, *args, **kwargs):
|
||||
if self.request.user.is_authenticated:
|
||||
return redirect('tareas')
|
||||
return super(PaginaRegistro, self.get(*args, **kwargs))
|
||||
|
||||
|
||||
class ListaPendientes(LoginRequiredMixin, ListView):
|
||||
model = Tarea
|
||||
context_object_name = 'tareas'
|
||||
|
||||
@@ -104,7 +104,7 @@ AUTH_PASSWORD_VALIDATORS = [
|
||||
# Internationalization
|
||||
# https://docs.djangoproject.com/en/4.2/topics/i18n/
|
||||
|
||||
LANGUAGE_CODE = 'en-us'
|
||||
LANGUAGE_CODE = 'es-es'
|
||||
|
||||
TIME_ZONE = 'UTC'
|
||||
|
||||
|
||||
Reference in New Issue
Block a user