diff --git a/Django_Blog/06-User-Registration-Form/django_project/django_project/settings.py b/Django_Blog/06-User-Registration-Form/django_project/django_project/settings.py index 8df8664b7..e0d0e735f 100644 --- a/Django_Blog/06-User-Registration-Form/django_project/django_project/settings.py +++ b/Django_Blog/06-User-Registration-Form/django_project/django_project/settings.py @@ -34,6 +34,7 @@ 'blog.apps.BlogConfig', 'users.apps.UsersConfig', 'crispy_forms', + 'crispy_bootstrap5', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', @@ -122,4 +123,5 @@ STATIC_URL = '/static/' -CRISPY_TEMPLATE_PACK = 'bootstrap4' +CRISPY_ALLOWED_TEMPLATE_PACKS = "bootstrap5" +CRISPY_TEMPLATE_PACK = "bootstrap5" diff --git a/Django_Blog/07-Login-Logout-Authentication/django_project/django_project/settings.py b/Django_Blog/07-Login-Logout-Authentication/django_project/django_project/settings.py index 218f2cb32..40c7fe31c 100644 --- a/Django_Blog/07-Login-Logout-Authentication/django_project/django_project/settings.py +++ b/Django_Blog/07-Login-Logout-Authentication/django_project/django_project/settings.py @@ -34,6 +34,7 @@ 'blog.apps.BlogConfig', 'users.apps.UsersConfig', 'crispy_forms', + 'crispy_bootstrap5', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', @@ -125,7 +126,8 @@ MEDIA_ROOT = os.path.join(BASE_DIR, 'media') MEDIA_URL = '/media/' -CRISPY_TEMPLATE_PACK = 'bootstrap4' +CRISPY_ALLOWED_TEMPLATE_PACKS = "bootstrap5" +CRISPY_TEMPLATE_PACK = "bootstrap5" LOGIN_REDIRECT_URL = 'blog-home' LOGIN_URL = 'login' diff --git a/Django_Blog/07-Login-Logout-Authentication/django_project/django_project/urls.py b/Django_Blog/07-Login-Logout-Authentication/django_project/django_project/urls.py index 37b6e5456..aa772893f 100644 --- a/Django_Blog/07-Login-Logout-Authentication/django_project/django_project/urls.py +++ b/Django_Blog/07-Login-Logout-Authentication/django_project/django_project/urls.py @@ -25,7 +25,7 @@ path('register/', user_views.register, name='register'), path('profile/', user_views.profile, name='profile'), path('login/', auth_views.LoginView.as_view(template_name='users/login.html'), name='login'), - path('logout/', auth_views.LogoutView.as_view(template_name='users/logout.html'), name='logout'), + path('logout/', user_views.logout_view, name="logout"), path('', include('blog.urls')), ] diff --git a/Django_Blog/07-Login-Logout-Authentication/django_project/users/views.py b/Django_Blog/07-Login-Logout-Authentication/django_project/users/views.py index 5e7696b89..da3979fb9 100644 --- a/Django_Blog/07-Login-Logout-Authentication/django_project/users/views.py +++ b/Django_Blog/07-Login-Logout-Authentication/django_project/users/views.py @@ -2,6 +2,7 @@ from django.contrib import messages from django.contrib.auth.decorators import login_required from .forms import UserRegisterForm +from django.contrib.auth import logout def register(request): @@ -17,6 +18,11 @@ def register(request): return render(request, 'users/register.html', {'form': form}) +def logout_view(request): + logout(request) + return render(request, 'users/logout.html') + + @login_required def profile(request): return render(request, 'users/profile.html') diff --git a/Django_Blog/08-Profile-And-Images/django_project/django_project/settings.py b/Django_Blog/08-Profile-And-Images/django_project/django_project/settings.py index 218f2cb32..40c7fe31c 100644 --- a/Django_Blog/08-Profile-And-Images/django_project/django_project/settings.py +++ b/Django_Blog/08-Profile-And-Images/django_project/django_project/settings.py @@ -34,6 +34,7 @@ 'blog.apps.BlogConfig', 'users.apps.UsersConfig', 'crispy_forms', + 'crispy_bootstrap5', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', @@ -125,7 +126,8 @@ MEDIA_ROOT = os.path.join(BASE_DIR, 'media') MEDIA_URL = '/media/' -CRISPY_TEMPLATE_PACK = 'bootstrap4' +CRISPY_ALLOWED_TEMPLATE_PACKS = "bootstrap5" +CRISPY_TEMPLATE_PACK = "bootstrap5" LOGIN_REDIRECT_URL = 'blog-home' LOGIN_URL = 'login' diff --git a/Django_Blog/08-Profile-And-Images/django_project/django_project/urls.py b/Django_Blog/08-Profile-And-Images/django_project/django_project/urls.py index 37b6e5456..aa772893f 100644 --- a/Django_Blog/08-Profile-And-Images/django_project/django_project/urls.py +++ b/Django_Blog/08-Profile-And-Images/django_project/django_project/urls.py @@ -25,7 +25,7 @@ path('register/', user_views.register, name='register'), path('profile/', user_views.profile, name='profile'), path('login/', auth_views.LoginView.as_view(template_name='users/login.html'), name='login'), - path('logout/', auth_views.LogoutView.as_view(template_name='users/logout.html'), name='logout'), + path('logout/', user_views.logout_view, name="logout"), path('', include('blog.urls')), ] diff --git a/Django_Blog/08-Profile-And-Images/django_project/users/views.py b/Django_Blog/08-Profile-And-Images/django_project/users/views.py index 5e7696b89..6880a3a18 100644 --- a/Django_Blog/08-Profile-And-Images/django_project/users/views.py +++ b/Django_Blog/08-Profile-And-Images/django_project/users/views.py @@ -2,7 +2,7 @@ from django.contrib import messages from django.contrib.auth.decorators import login_required from .forms import UserRegisterForm - +from django.contrib.auth import logout def register(request): if request.method == 'POST': @@ -17,6 +17,11 @@ def register(request): return render(request, 'users/register.html', {'form': form}) +def logout_view(request): + logout(request) + return render(request, 'users/logout.html') + + @login_required def profile(request): return render(request, 'users/profile.html') diff --git a/Django_Blog/09-Update-User-Profile/django_project/blog/static/blog/main.css b/Django_Blog/09-Update-User-Profile/django_project/blog/static/blog/main.css index 06c3af5f9..b102d94b3 100644 --- a/Django_Blog/09-Update-User-Profile/django_project/blog/static/blog/main.css +++ b/Django_Blog/09-Update-User-Profile/django_project/blog/static/blog/main.css @@ -50,8 +50,8 @@ a.article-title:hover { } .article-img { - height: 65px; - width: 65px; + height: 90px; + width: 90px; margin-right: 16px; } diff --git a/Django_Blog/09-Update-User-Profile/django_project/blog/templates/blog/home.html b/Django_Blog/09-Update-User-Profile/django_project/blog/templates/blog/home.html index 46d5d35ed..4839950f7 100644 --- a/Django_Blog/09-Update-User-Profile/django_project/blog/templates/blog/home.html +++ b/Django_Blog/09-Update-User-Profile/django_project/blog/templates/blog/home.html @@ -1,16 +1,21 @@ -{% extends "blog/base.html" %} +{% extends "blog/base.html"%} {% block content %} - {% for post in posts %} -
- -
- -

{{ post.title }}

-

{{ post.content }}

-
-
- {% endfor %} +{% for post in posts %} +
+
+
+ +
+
+ +

{{ post.title }}

+

{{ post.content }}

+
+
+ +
+{% endfor %} {% endblock content %} diff --git a/Django_Blog/09-Update-User-Profile/django_project/django_project/settings.py b/Django_Blog/09-Update-User-Profile/django_project/django_project/settings.py index 218f2cb32..40c7fe31c 100644 --- a/Django_Blog/09-Update-User-Profile/django_project/django_project/settings.py +++ b/Django_Blog/09-Update-User-Profile/django_project/django_project/settings.py @@ -34,6 +34,7 @@ 'blog.apps.BlogConfig', 'users.apps.UsersConfig', 'crispy_forms', + 'crispy_bootstrap5', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', @@ -125,7 +126,8 @@ MEDIA_ROOT = os.path.join(BASE_DIR, 'media') MEDIA_URL = '/media/' -CRISPY_TEMPLATE_PACK = 'bootstrap4' +CRISPY_ALLOWED_TEMPLATE_PACKS = "bootstrap5" +CRISPY_TEMPLATE_PACK = "bootstrap5" LOGIN_REDIRECT_URL = 'blog-home' LOGIN_URL = 'login' diff --git a/Django_Blog/09-Update-User-Profile/django_project/django_project/urls.py b/Django_Blog/09-Update-User-Profile/django_project/django_project/urls.py index 37b6e5456..aa772893f 100644 --- a/Django_Blog/09-Update-User-Profile/django_project/django_project/urls.py +++ b/Django_Blog/09-Update-User-Profile/django_project/django_project/urls.py @@ -25,7 +25,7 @@ path('register/', user_views.register, name='register'), path('profile/', user_views.profile, name='profile'), path('login/', auth_views.LoginView.as_view(template_name='users/login.html'), name='login'), - path('logout/', auth_views.LogoutView.as_view(template_name='users/logout.html'), name='logout'), + path('logout/', user_views.logout_view, name="logout"), path('', include('blog.urls')), ] diff --git a/Django_Blog/09-Update-User-Profile/django_project/users/templates/users/profile.html b/Django_Blog/09-Update-User-Profile/django_project/users/templates/users/profile.html index 76fd4d2b8..e091c0bd5 100644 --- a/Django_Blog/09-Update-User-Profile/django_project/users/templates/users/profile.html +++ b/Django_Blog/09-Update-User-Profile/django_project/users/templates/users/profile.html @@ -1,24 +1,32 @@ {% extends "blog/base.html" %} {% load crispy_forms_tags %} + {% block content %} +
-
- -
- -

{{ user.email }}

+ +
+
+ +
+
+ +

{{user.email}}

+
-
-
- {% csrf_token %} -
- Profile Info - {{ u_form|crispy }} - {{ p_form|crispy }} -
-
- -
-
+ + +
+ {% csrf_token %} +
+ Profile Info + {{ u_form|crispy }} + {{ p_form|crispy }} +
+
+ +
+
+ {% endblock content %} diff --git a/Django_Blog/09-Update-User-Profile/django_project/users/views.py b/Django_Blog/09-Update-User-Profile/django_project/users/views.py index c9de3bb90..2355e5d3a 100644 --- a/Django_Blog/09-Update-User-Profile/django_project/users/views.py +++ b/Django_Blog/09-Update-User-Profile/django_project/users/views.py @@ -2,7 +2,7 @@ from django.contrib import messages from django.contrib.auth.decorators import login_required from .forms import UserRegisterForm, UserUpdateForm, ProfileUpdateForm - +from django.contrib.auth import logout def register(request): if request.method == 'POST': @@ -16,6 +16,10 @@ def register(request): form = UserRegisterForm() return render(request, 'users/register.html', {'form': form}) +def logout_view(request): + logout(request) + return render(request, 'users/logout.html') + @login_required def profile(request): diff --git a/Django_Blog/10-Posts-Create-Update-Delete/django_project/django_project/settings.py b/Django_Blog/10-Posts-Create-Update-Delete/django_project/django_project/settings.py index 218f2cb32..fef9b3c37 100644 --- a/Django_Blog/10-Posts-Create-Update-Delete/django_project/django_project/settings.py +++ b/Django_Blog/10-Posts-Create-Update-Delete/django_project/django_project/settings.py @@ -34,6 +34,7 @@ 'blog.apps.BlogConfig', 'users.apps.UsersConfig', 'crispy_forms', + 'crispy_bootstrap5', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', @@ -125,7 +126,9 @@ MEDIA_ROOT = os.path.join(BASE_DIR, 'media') MEDIA_URL = '/media/' -CRISPY_TEMPLATE_PACK = 'bootstrap4' +CRISPY_ALLOWED_TEMPLATE_PACKS = "bootstrap5" +CRISPY_TEMPLATE_PACK = "bootstrap5" + LOGIN_REDIRECT_URL = 'blog-home' LOGIN_URL = 'login' diff --git a/Django_Blog/10-Posts-Create-Update-Delete/django_project/django_project/urls.py b/Django_Blog/10-Posts-Create-Update-Delete/django_project/django_project/urls.py index 37b6e5456..aa772893f 100644 --- a/Django_Blog/10-Posts-Create-Update-Delete/django_project/django_project/urls.py +++ b/Django_Blog/10-Posts-Create-Update-Delete/django_project/django_project/urls.py @@ -25,7 +25,7 @@ path('register/', user_views.register, name='register'), path('profile/', user_views.profile, name='profile'), path('login/', auth_views.LoginView.as_view(template_name='users/login.html'), name='login'), - path('logout/', auth_views.LogoutView.as_view(template_name='users/logout.html'), name='logout'), + path('logout/', user_views.logout_view, name="logout"), path('', include('blog.urls')), ] diff --git a/Django_Blog/10-Posts-Create-Update-Delete/django_project/users/views.py b/Django_Blog/10-Posts-Create-Update-Delete/django_project/users/views.py index c9de3bb90..854d06ede 100644 --- a/Django_Blog/10-Posts-Create-Update-Delete/django_project/users/views.py +++ b/Django_Blog/10-Posts-Create-Update-Delete/django_project/users/views.py @@ -2,6 +2,7 @@ from django.contrib import messages from django.contrib.auth.decorators import login_required from .forms import UserRegisterForm, UserUpdateForm, ProfileUpdateForm +from django.contrib.auth import logout def register(request): @@ -17,6 +18,11 @@ def register(request): return render(request, 'users/register.html', {'form': form}) +def logout_view(request): + logout(request) + return render(request, 'users/logout.html') + + @login_required def profile(request): if request.method == 'POST': diff --git a/Django_Blog/11-Pagination/django_project/django_project/settings.py b/Django_Blog/11-Pagination/django_project/django_project/settings.py index 218f2cb32..fef9b3c37 100644 --- a/Django_Blog/11-Pagination/django_project/django_project/settings.py +++ b/Django_Blog/11-Pagination/django_project/django_project/settings.py @@ -34,6 +34,7 @@ 'blog.apps.BlogConfig', 'users.apps.UsersConfig', 'crispy_forms', + 'crispy_bootstrap5', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', @@ -125,7 +126,9 @@ MEDIA_ROOT = os.path.join(BASE_DIR, 'media') MEDIA_URL = '/media/' -CRISPY_TEMPLATE_PACK = 'bootstrap4' +CRISPY_ALLOWED_TEMPLATE_PACKS = "bootstrap5" +CRISPY_TEMPLATE_PACK = "bootstrap5" + LOGIN_REDIRECT_URL = 'blog-home' LOGIN_URL = 'login' diff --git a/Django_Blog/11-Pagination/django_project/django_project/urls.py b/Django_Blog/11-Pagination/django_project/django_project/urls.py index 37b6e5456..aa772893f 100644 --- a/Django_Blog/11-Pagination/django_project/django_project/urls.py +++ b/Django_Blog/11-Pagination/django_project/django_project/urls.py @@ -25,7 +25,7 @@ path('register/', user_views.register, name='register'), path('profile/', user_views.profile, name='profile'), path('login/', auth_views.LoginView.as_view(template_name='users/login.html'), name='login'), - path('logout/', auth_views.LogoutView.as_view(template_name='users/logout.html'), name='logout'), + path('logout/', user_views.logout_view, name="logout"), path('', include('blog.urls')), ] diff --git a/Django_Blog/11-Pagination/django_project/users/views.py b/Django_Blog/11-Pagination/django_project/users/views.py index c9de3bb90..fb1272df4 100644 --- a/Django_Blog/11-Pagination/django_project/users/views.py +++ b/Django_Blog/11-Pagination/django_project/users/views.py @@ -2,7 +2,7 @@ from django.contrib import messages from django.contrib.auth.decorators import login_required from .forms import UserRegisterForm, UserUpdateForm, ProfileUpdateForm - +from django.contrib.auth import logout def register(request): if request.method == 'POST': @@ -17,6 +17,11 @@ def register(request): return render(request, 'users/register.html', {'form': form}) +def logout_view(request): + logout(request) + return render(request, 'users/logout.html') + + @login_required def profile(request): if request.method == 'POST': diff --git a/Django_Blog/12-Password-Reset/django_project/blog/templates/blog/base.html b/Django_Blog/12-Password-Reset/django_project/blog/templates/blog/base.html index bb7c9fd52..29e0164a7 100644 --- a/Django_Blog/12-Password-Reset/django_project/blog/templates/blog/base.html +++ b/Django_Blog/12-Password-Reset/django_project/blog/templates/blog/base.html @@ -23,7 +23,7 @@