Esta clase me costo un poco arreglar las cosas :v para que siguiera funcionando las escribiré por si alguien le cuesta como a mi
en la carpeta users el archivo urls.py es mejor poner el route así como dice el comentario de tomas
route = 'profile/<str:username>/',
y también en ese mismo archivo hay que quitarle la palabra users a los route de los path pues si no tendríamos que estar poniendo en el navegador users/users/login y pues no, así que lo quitamos y quedaría así
path(
route = 'login/',
view = views.login_view,
name='login'
),
path(
route = 'logout/',
view = views.logout_view,
name='logout'
),
path(
route = 'signup/',
view = views.signup,
name ='signup'
),
path(
route = 'me/profile/',
view = views.update_profile,
name='update_profile'
),
y ya luego hay que cambiar las cosas de los templates views y middleware para que funcione la aplicación entonces
En la carpeta platzigram en middleware modifique esto;
if request.path not in [reverse('users:update_profile'), reverse('users:logout')]:
return redirect('users:update_profile')
En los template/users/update_profile.html
<form action="{% url 'users:update_profile' %}" method="POST" enctype="multipart/form-data">
En template/users/login.html se cambia en dos lineas
<form method="POST" action="{% url "users:login" %}">
<p class="mt-4">Don't have an account yet?<a href="{% url "users:signup" %}">Sign up here.</a></p>
En template/users/signup.html
<form action = "{% url 'users:signup' %}" method="POST">
En posts/views.py en la funcion create_post
return redirect('posts:feed')
y por ultimo en users/views.py se cambia en la funciones
login_view
return redirect('posts:feed')
funcion logout_view
return redirect('users:login')
funcion signup
return redirect('users:login')
y por ultimo la funcion update_profile
return redirect('users:update_profile')
¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.