Source code for services.posts.like

from typing import TYPE_CHECKING

from apps.posts.models import Like

if TYPE_CHECKING:
    from apps.posts.models import Post
    from apps.users.models import User


[docs] class LikeService: @classmethod def _create(cls, post: "Post", user: "User") -> "Like": return Like.objects.create(post=post, author=user)
[docs] @classmethod def create(cls, post: "Post", user: "User") -> "Like": """Create like""" return cls._create(post, user)
[docs] @classmethod def get(cls, data) -> Like: return Like.objects.get(**data)
[docs] @classmethod def delete(cls, post: "Post", user: "User") -> None: """Detele like""" instance = cls.get(data={"post": post, "author": user}) instance.delete()