feat: cart
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
from django.conf import settings
|
||||
from django.core.paginator import Paginator
|
||||
|
||||
from shop.models import Cart
|
||||
from web.settings import ANONYMOUS_CART_ID_COOKIE_NAME
|
||||
|
||||
|
||||
class FilteredQuerysetMixin:
|
||||
queryset = None
|
||||
@@ -25,3 +28,13 @@ class PaginatedQuerysetMixin:
|
||||
page = self.request.GET.get("page", 1)
|
||||
qs = paginator.get_page(page)
|
||||
return qs
|
||||
|
||||
|
||||
class CartMixin:
|
||||
def get_cart(self):
|
||||
if not self.request.user.is_authenticated:
|
||||
uid = self.request.COOKIES.get(ANONYMOUS_CART_ID_COOKIE_NAME)
|
||||
cart = Cart.objects.get(uuid=uid)
|
||||
else:
|
||||
cart = Cart.objects.filter(user=self.request.user).first()
|
||||
return cart
|
||||
|
||||
Reference in New Issue
Block a user