Commit 81a14504 authored by impfundev's avatar impfundev

fix: deactivated cache and debug tool

parent 3d322bb0
from django.urls import path from django.urls import path
from book_loans.views import index, update, delete from book_loans.views import index, update, delete
from django.views.decorators.cache import cache_page from django.views.decorators.cache import cache_page
from django.conf import settings
urlpatterns = [ urlpatterns = [
path( path("", index, name="book_loan_lists"),
"",
cache_page(settings.CACHE_TTL, key_prefix="book_loans")(index),
name="book_loan_lists",
),
path("<id>/update/", update, name="update_book"), path("<id>/update/", update, name="update_book"),
path("<id>/delete/", delete, name="delete_book_loan"), path("<id>/delete/", delete, name="delete_book_loan"),
] ]
import jwt import jwt
from django.conf import settings from django.conf import settings
from django.core.cache import cache
from datetime import datetime from datetime import datetime
from django.db.models import Q from django.db.models import Q
...@@ -32,17 +31,16 @@ def index(request): ...@@ -32,17 +31,16 @@ def index(request):
page_obj = paginator.page(page) page_obj = paginator.page(page)
context["page_obj"] = page_obj context["page_obj"] = page_obj
context["book_loans"] = page_obj context["book_loans"] = page_obj
cache.clear()
except PageNotAnInteger: except PageNotAnInteger:
page_obj = paginator.page(default_page) page_obj = paginator.page(default_page)
context["page_obj"] = page_obj context["page_obj"] = page_obj
context["book_loans"] = page_obj context["book_loans"] = page_obj
cache.clear()
except EmptyPage: except EmptyPage:
page_obj = paginator.page(paginator.num_pages) page_obj = paginator.page(paginator.num_pages)
context["page_obj"] = page_obj context["page_obj"] = page_obj
context["book_loans"] = page_obj context["book_loans"] = page_obj
cache.clear()
if request.method == "POST": if request.method == "POST":
form = BookLoanForm(request.POST) form = BookLoanForm(request.POST)
...@@ -73,7 +71,6 @@ def index(request): ...@@ -73,7 +71,6 @@ def index(request):
librarians_id=librarians_id, librarians_id=librarians_id,
return_date=return_date, return_date=return_date,
) )
cache.clear()
if request.method == "GET": if request.method == "GET":
keyword = request.GET.get("q") keyword = request.GET.get("q")
...@@ -86,10 +83,10 @@ def index(request): ...@@ -86,10 +83,10 @@ def index(request):
context["book_loans"] = filtered_book_list context["book_loans"] = filtered_book_list
if order == "new": if order == "new":
cache.clear()
context["book_loans"] = BookLoans.objects.all().order_by("-created_at") context["book_loans"] = BookLoans.objects.all().order_by("-created_at")
elif order == "old": elif order == "old":
cache.clear()
context["book_loans"] = BookLoans.objects.all().order_by("created_at") context["book_loans"] = BookLoans.objects.all().order_by("created_at")
return render(request, "loans.html", context) return render(request, "loans.html", context)
...@@ -148,7 +145,6 @@ def update(request, id): ...@@ -148,7 +145,6 @@ def update(request, id):
if updated_loan.return_date is not None and book.stock < new_stock: if updated_loan.return_date is not None and book.stock < new_stock:
Book.objects.filter(id=book_id).update(stock_in=new_stock) Book.objects.filter(id=book_id).update(stock_in=new_stock)
cache.clear()
return HttpResponseRedirect("/dashboard/book-loans") return HttpResponseRedirect("/dashboard/book-loans")
context["form"] = form context["form"] = form
...@@ -170,7 +166,6 @@ def delete(request, id): ...@@ -170,7 +166,6 @@ def delete(request, id):
books.filter(id=book_id).update(stock=new_stock) books.filter(id=book_id).update(stock=new_stock)
book_loan.delete() book_loan.delete()
cache.clear()
return HttpResponseRedirect("/dashboard/book-loans") return HttpResponseRedirect("/dashboard/book-loans")
......
from django.shortcuts import get_object_or_404, render from django.shortcuts import get_object_or_404, render
from django.core.cache import cache
from django.http import HttpResponseRedirect from django.http import HttpResponseRedirect
from datetime import datetime from datetime import datetime
...@@ -23,17 +22,16 @@ def index(request): ...@@ -23,17 +22,16 @@ def index(request):
page_obj = paginator.page(page) page_obj = paginator.page(page)
context["page_obj"] = page_obj context["page_obj"] = page_obj
context["books"] = page_obj context["books"] = page_obj
cache.clear()
except PageNotAnInteger: except PageNotAnInteger:
page_obj = paginator.page(default_page) page_obj = paginator.page(default_page)
context["page_obj"] = page_obj context["page_obj"] = page_obj
context["books"] = page_obj context["books"] = page_obj
cache.clear()
except EmptyPage: except EmptyPage:
page_obj = paginator.page(paginator.num_pages) page_obj = paginator.page(paginator.num_pages)
context["page_obj"] = page_obj context["page_obj"] = page_obj
context["books"] = page_obj context["books"] = page_obj
cache.clear()
if request.method == "POST": if request.method == "POST":
form = BookForm(request.POST) form = BookForm(request.POST)
...@@ -43,24 +41,23 @@ def index(request): ...@@ -43,24 +41,23 @@ def index(request):
description = form.data["description"] description = form.data["description"]
Book.objects.create(title=title, stock=stock, description=description) Book.objects.create(title=title, stock=stock, description=description)
cache.clear()
if request.method == "GET": if request.method == "GET":
keyword = request.GET.get("q") keyword = request.GET.get("q")
order = request.GET.get("o") order = request.GET.get("o")
if keyword is not None: if keyword is not None:
cache.clear()
filtered_book_list = Book.objects.filter( filtered_book_list = Book.objects.filter(
Q(title__icontains=keyword) | Q(description__icontains=keyword) Q(title__icontains=keyword) | Q(description__icontains=keyword)
).order_by("-created_at") ).order_by("-created_at")
context["books"] = filtered_book_list context["books"] = filtered_book_list
if order == "new": if order == "new":
cache.clear()
context["books"] = Book.objects.all().order_by("-updated_at") context["books"] = Book.objects.all().order_by("-updated_at")
elif order == "old": elif order == "old":
cache.clear()
context["books"] = Book.objects.all().order_by("updated_at") context["books"] = Book.objects.all().order_by("updated_at")
return render(request, "book.html", context) return render(request, "book.html", context)
...@@ -91,7 +88,7 @@ def update(request, id): ...@@ -91,7 +88,7 @@ def update(request, id):
description=description, description=description,
updated_at=datetime.now(), updated_at=datetime.now(),
) )
cache.clear()
return HttpResponseRedirect("/dashboard/books") return HttpResponseRedirect("/dashboard/books")
context["form"] = form context["form"] = form
...@@ -105,7 +102,7 @@ def delete(request, id): ...@@ -105,7 +102,7 @@ def delete(request, id):
if request.method == "POST": if request.method == "POST":
book.delete() book.delete()
cache.clear()
return HttpResponseRedirect("/dashboard/books") return HttpResponseRedirect("/dashboard/books")
return render(request, "book.html", context) return render(request, "book.html", context)
...@@ -30,25 +30,7 @@ SECRET_KEY = JWT_SECRET ...@@ -30,25 +30,7 @@ SECRET_KEY = JWT_SECRET
# SECURITY WARNING: don't run with debug turned on in production! # SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True DEBUG = True
ALLOWED_HOSTS = ["localhost", "127.0.0.1", ".vercel.app", ".now.sh"] ALLOWED_HOSTS = ["localhost", "127.0.0.1"]
INTERNAL_IPS = [
"127.0.0.1",
]
def show_toolbar(request):
return True
DEBUG_TOOLBAR_CONFIG = {
"SHOW_TOOLBAR_CALLBACK": show_toolbar,
}
if DEBUG:
import mimetypes
mimetypes.add_type("application/javascript", ".js", True)
# Application definition # Application definition
...@@ -61,7 +43,6 @@ INSTALLED_APPS = [ ...@@ -61,7 +43,6 @@ INSTALLED_APPS = [
"django.contrib.messages", "django.contrib.messages",
"django.contrib.staticfiles", "django.contrib.staticfiles",
# 3rd party # 3rd party
# "debug_toolbar",
"rest_framework", "rest_framework",
"rest_framework.authtoken", "rest_framework.authtoken",
"django_filters", "django_filters",
...@@ -190,17 +171,6 @@ STORAGES = { ...@@ -190,17 +171,6 @@ STORAGES = {
}, },
} }
CACHES = {
"default": {
"BACKEND": "django_redis.cache.RedisCache",
"LOCATION": getenv("CACHE_LOCATION"),
},
}
CACHE_TTL = 60 * 15 # 15 Minute
SESSION_ENGINE = "django.contrib.sessions.backends.cached_db"
# Default primary key field type # Default primary key field type
# https://docs.djangoproject.com/en/5.0/ref/settings/#default-auto-field # https://docs.djangoproject.com/en/5.0/ref/settings/#default-auto-field
......
...@@ -25,7 +25,6 @@ urlpatterns = [ ...@@ -25,7 +25,6 @@ urlpatterns = [
path("dashboard/", include("dashboards.urls")), path("dashboard/", include("dashboards.urls")),
path("admin/", admin.site.urls), path("admin/", admin.site.urls),
path("auth/", include("authentications.urls")), path("auth/", include("authentications.urls")),
# path("__debug__/", include("debug_toolbar.urls")),
# API # API
path("api/v1/", include("api.urls")), path("api/v1/", include("api.urls")),
path("api/v1/auth/", include("dj_rest_auth.urls")), path("api/v1/auth/", include("dj_rest_auth.urls")),
......
from authentications.utils import Hasher from authentications.utils import Hasher
from django.shortcuts import get_object_or_404, render from django.shortcuts import get_object_or_404, render
from django.core.cache import cache
from django.http import HttpResponseRedirect from django.http import HttpResponseRedirect
from django.db.models import Q from django.db.models import Q
from datetime import datetime from datetime import datetime
...@@ -23,17 +22,16 @@ def index(request): ...@@ -23,17 +22,16 @@ def index(request):
page_obj = paginator.page(page) page_obj = paginator.page(page)
context["page_obj"] = page_obj context["page_obj"] = page_obj
context["librarians"] = page_obj context["librarians"] = page_obj
cache.clear()
except PageNotAnInteger: except PageNotAnInteger:
page_obj = paginator.page(default_page) page_obj = paginator.page(default_page)
context["page_obj"] = page_obj context["page_obj"] = page_obj
context["librarians"] = page_obj context["librarians"] = page_obj
cache.clear()
except EmptyPage: except EmptyPage:
page_obj = paginator.page(paginator.num_pages) page_obj = paginator.page(paginator.num_pages)
context["page_obj"] = page_obj context["page_obj"] = page_obj
context["librarians"] = page_obj context["librarians"] = page_obj
cache.clear()
if request.method == "POST": if request.method == "POST":
form = LibrarianForm(request.POST) form = LibrarianForm(request.POST)
...@@ -44,26 +42,25 @@ def index(request): ...@@ -44,26 +42,25 @@ def index(request):
hashed_password = Hasher.encode(password=password) hashed_password = Hasher.encode(password=password)
Librarians.objects.create(name=name, email=email, password=hashed_password) Librarians.objects.create(name=name, email=email, password=hashed_password)
cache.clear()
if request.method == "GET": if request.method == "GET":
keyword = request.GET.get("q") keyword = request.GET.get("q")
order = request.GET.get("o") order = request.GET.get("o")
if keyword is not None: if keyword is not None:
cache.clear()
filtered_book_list = Librarians.objects.filter( filtered_book_list = Librarians.objects.filter(
Q(name__icontains=keyword) | Q(email__icontains=keyword) Q(name__icontains=keyword) | Q(email__icontains=keyword)
).order_by("-created_at") ).order_by("-created_at")
context["librarians"] = filtered_book_list context["librarians"] = filtered_book_list
if order == "new": if order == "new":
cache.clear()
context["librarians"] = Librarians.objects.all().order_by("-updated_at")[ context["librarians"] = Librarians.objects.all().order_by("-updated_at")[
:10 :10
] ]
elif order == "old": elif order == "old":
cache.clear()
context["librarians"] = Librarians.objects.all().order_by("updated_at") context["librarians"] = Librarians.objects.all().order_by("updated_at")
return render(request, "librarians.html", context) return render(request, "librarians.html", context)
...@@ -93,7 +90,7 @@ def update(request, id): ...@@ -93,7 +90,7 @@ def update(request, id):
password=hashed_password, password=hashed_password,
updated_at=datetime.now(), updated_at=datetime.now(),
) )
cache.clear()
return HttpResponseRedirect("/dashboard/librarians") return HttpResponseRedirect("/dashboard/librarians")
context["form"] = form context["form"] = form
...@@ -107,7 +104,7 @@ def delete(request, id): ...@@ -107,7 +104,7 @@ def delete(request, id):
if request.method == "POST": if request.method == "POST":
librarian.delete() librarian.delete()
cache.clear()
return HttpResponseRedirect("/dashboard/librarians") return HttpResponseRedirect("/dashboard/librarians")
return render(request, "librarians.html", context) return render(request, "librarians.html", context)
from django.shortcuts import get_object_or_404, render from django.shortcuts import get_object_or_404, render
from django.core.cache import cache
from django.http import HttpResponseRedirect from django.http import HttpResponseRedirect
from django.db.models import Q from django.db.models import Q
from datetime import datetime from datetime import datetime
...@@ -22,17 +21,16 @@ def index(request): ...@@ -22,17 +21,16 @@ def index(request):
page_obj = paginator.page(page) page_obj = paginator.page(page)
context["page_obj"] = page_obj context["page_obj"] = page_obj
context["members"] = page_obj context["members"] = page_obj
cache.clear()
except PageNotAnInteger: except PageNotAnInteger:
page_obj = paginator.page(default_page) page_obj = paginator.page(default_page)
context["page_obj"] = page_obj context["page_obj"] = page_obj
context["members"] = page_obj context["members"] = page_obj
cache.clear()
except EmptyPage: except EmptyPage:
page_obj = paginator.page(paginator.num_pages) page_obj = paginator.page(paginator.num_pages)
context["page_obj"] = page_obj context["page_obj"] = page_obj
context["members"] = page_obj context["members"] = page_obj
cache.clear()
if request.method == "POST": if request.method == "POST":
form = MemberForm(request.POST) form = MemberForm(request.POST)
...@@ -42,24 +40,23 @@ def index(request): ...@@ -42,24 +40,23 @@ def index(request):
password = form.data["password"] password = form.data["password"]
Members.objects.create(name=name, email=email, password=password) Members.objects.create(name=name, email=email, password=password)
cache.clear()
if request.method == "GET": if request.method == "GET":
keyword = request.GET.get("q") keyword = request.GET.get("q")
order = request.GET.get("o") order = request.GET.get("o")
if keyword is not None: if keyword is not None:
cache.clear()
filtered_book_list = Members.objects.filter( filtered_book_list = Members.objects.filter(
Q(name__icontains=keyword) | Q(email__icontains=keyword) Q(name__icontains=keyword) | Q(email__icontains=keyword)
).order_by("-created_at") ).order_by("-created_at")
context["members"] = filtered_book_list context["members"] = filtered_book_list
if order == "new": if order == "new":
cache.clear()
context["members"] = Members.objects.all().order_by("-updated_at") context["members"] = Members.objects.all().order_by("-updated_at")
elif order == "old": elif order == "old":
cache.clear()
context["members"] = Members.objects.all().order_by("updated_at") context["members"] = Members.objects.all().order_by("updated_at")
return render(request, "members.html", context) return render(request, "members.html", context)
...@@ -86,7 +83,7 @@ def update(request, id): ...@@ -86,7 +83,7 @@ def update(request, id):
member.update( member.update(
name=name, email=email, password=password, updated_at=datetime.now() name=name, email=email, password=password, updated_at=datetime.now()
) )
cache.clear()
return HttpResponseRedirect("/dashboard/members") return HttpResponseRedirect("/dashboard/members")
context["form"] = form context["form"] = form
...@@ -100,7 +97,7 @@ def delete(request, id): ...@@ -100,7 +97,7 @@ def delete(request, id):
if request.method == "POST": if request.method == "POST":
member.delete() member.delete()
cache.clear()
return HttpResponseRedirect("/dashboard/members") return HttpResponseRedirect("/dashboard/members")
return render(request, "members.html", context) return render(request, "members.html", context)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment