from django.core.cache import cache
from django.views.decorators.cache import cache_page
from django.utils.decorators import method_decorator
from django.views.generic import ListView, DetailView
from .models import Post
import factory
from factory.django import DjangoModelFactory
from factory import Faker, SubFactory, post_generation
from blog.models import Post, Comment, Tag
from django.contrib.auth import get_user_model
from celery import shared_task
from django.core.mail import send_mail
from django.contrib.auth import get_user_model
User = get_user_model()
from rest_framework.pagination import PageNumberPagination, CursorPagination
class StandardResultsSetPagination(PageNumberPagination):
page_size = 25
page_size_query_param = 'page_size'
from django.db import models
from django.utils import timezone
class PostQuerySet(models.QuerySet):
def published(self):
from django import forms
from .models import Event
class EventForm(forms.ModelForm):
class Meta:
from django.core.exceptions import PermissionDenied
class UserOwnershipMixin:
"""Ensure the object belongs to the current user."""
import logging
import time
logger = logging.getLogger(__name__)
import csv
from django.core.management.base import BaseCommand, CommandError
from products.models import Product, Category
class Command(BaseCommand):
from django.db.models.signals import post_save
from django.dispatch import receiver
from django.core.mail import send_mail
from .models import User, Profile
from django.db.models import Prefetch
from django.views.generic import ListView
from .models import Post, Comment
class PostListView(ListView):
from rest_framework import permissions
class IsOwnerOrReadOnly(permissions.BasePermission):
"""
Custom permission to only allow owners of an object to edit it.