From 1c6d76d49a29fe319507b599e2458642361663ac Mon Sep 17 00:00:00 2001 From: andrerim Date: Mon, 19 Apr 2021 21:14:47 +0200 Subject: [PATCH] Remove unused 'like' feature --- .../comments/migrations/0002_delete_like.py | 16 ++++++++ backend/secfit/comments/models.py | 16 -------- backend/secfit/comments/serializers.py | 12 ------ backend/secfit/comments/urls.py | 4 -- backend/secfit/comments/views.py | 39 ------------------- backend/secfit/secfit/views.py | 1 - 6 files changed, 16 insertions(+), 72 deletions(-) create mode 100644 backend/secfit/comments/migrations/0002_delete_like.py diff --git a/backend/secfit/comments/migrations/0002_delete_like.py b/backend/secfit/comments/migrations/0002_delete_like.py new file mode 100644 index 0000000..292c42e --- /dev/null +++ b/backend/secfit/comments/migrations/0002_delete_like.py @@ -0,0 +1,16 @@ +# Generated by Django 3.1 on 2021-04-19 19:14 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('comments', '0001_initial'), + ] + + operations = [ + migrations.DeleteModel( + name='Like', + ), + ] diff --git a/backend/secfit/comments/models.py b/backend/secfit/comments/models.py index d5d003f..8ada16f 100644 --- a/backend/secfit/comments/models.py +++ b/backend/secfit/comments/models.py @@ -25,19 +25,3 @@ class Comment(models.Model): class Meta: ordering = ["-timestamp"] - - -class Like(models.Model): - """Django model for a reaction to a comment. - - Attributes: - owner: Who liked the comment - comment: The comment that was liked - timestamp: When the like occurred. - """ - - owner = models.ForeignKey( - get_user_model(), on_delete=models.CASCADE, related_name="likes" - ) - comment = models.ForeignKey(Comment, on_delete=models.CASCADE, related_name="likes") - timestamp = models.DateTimeField(auto_now_add=True) diff --git a/backend/secfit/comments/serializers.py b/backend/secfit/comments/serializers.py index a07c773..6046e3c 100644 --- a/backend/secfit/comments/serializers.py +++ b/backend/secfit/comments/serializers.py @@ -2,7 +2,6 @@ from rest_framework import serializers from rest_framework.serializers import HyperlinkedRelatedField from comments.models import Comment -from comments.models import Like from workouts.models import Workout @@ -15,14 +14,3 @@ class CommentSerializer(serializers.HyperlinkedModelSerializer): class Meta: model = Comment fields = ["url", "id", "owner", "workout", "content", "timestamp"] - - -class LikeSerializer(serializers.HyperlinkedModelSerializer): - owner = serializers.ReadOnlyField(source="owner.username") - comment = HyperlinkedRelatedField( - queryset=Comment.objects.all(), view_name="comment-detail" - ) - - class Meta: - model = Like - fields = ["url", "id", "owner", "comment", "timestamp"] diff --git a/backend/secfit/comments/urls.py b/backend/secfit/comments/urls.py index 5d7b757..8d9199b 100644 --- a/backend/secfit/comments/urls.py +++ b/backend/secfit/comments/urls.py @@ -2,12 +2,8 @@ from django.urls import path from comments.views import CommentDetail from comments.views import CommentList -from comments.views import LikeDetail -from comments.views import LikeList urlpatterns = [ path("comments/", CommentList.as_view(), name="comment-list"), path("comments//", CommentDetail.as_view(), name="comment-detail"), - path("likes/", LikeList.as_view(), name="like-list"), - path("likes//", LikeDetail.as_view(), name="like-detail"), ] diff --git a/backend/secfit/comments/views.py b/backend/secfit/comments/views.py index 6a0ffd6..7c9bcfe 100644 --- a/backend/secfit/comments/views.py +++ b/backend/secfit/comments/views.py @@ -5,10 +5,8 @@ from rest_framework import permissions from rest_framework.filters import OrderingFilter from comments.models import Comment -from comments.models import Like from comments.permissions import IsCommentVisibleToUser from comments.serializers import CommentSerializer -from comments.serializers import LikeSerializer from workouts.permissions import IsOwner from workouts.permissions import IsReadOnly @@ -80,40 +78,3 @@ class CommentDetail( def delete(self, request, *args, **kwargs): return self.destroy(request, *args, **kwargs) - - -class LikeList(mixins.ListModelMixin, mixins.CreateModelMixin, generics.GenericAPIView): - serializer_class = LikeSerializer - permission_classes = [permissions.IsAuthenticated] - - def get(self, request, *args, **kwargs): - return self.list(request, *args, **kwargs) - - def post(self, request, *args, **kwargs): - return self.create(request, *args, **kwargs) - - def perform_create(self, serializer): - serializer.save(owner=self.request.user) - - def get_queryset(self): - return Like.objects.filter(owner=self.request.user) - - -class LikeDetail( - mixins.RetrieveModelMixin, - mixins.UpdateModelMixin, - mixins.DestroyModelMixin, - generics.GenericAPIView, -): - queryset = Like.objects.all() - serializer_class = LikeSerializer - permission_classes = [permissions.IsAuthenticated] - - def get(self, request, *args, **kwargs): - return self.retrieve(request, *args, **kwargs) - - def put(self, request, *args, **kwargs): - return self.update(request, *args, **kwargs) - - def delete(self, request, *args, **kwargs): - return self.destroy(request, *args, **kwargs) diff --git a/backend/secfit/secfit/views.py b/backend/secfit/secfit/views.py index 36a1007..1614f8f 100644 --- a/backend/secfit/secfit/views.py +++ b/backend/secfit/secfit/views.py @@ -17,6 +17,5 @@ def api_root(request, format=None): "workout-file-list", request=request, format=format ), "comments": reverse("comment-list", request=request, format=format), - "likes": reverse("like-list", request=request, format=format), } ) -- GitLab