Add raiting
This commit is contained in:
parent
f0001eef93
commit
f90e1ceded
|
|
@ -1,7 +1,7 @@
|
|||
"""News app views."""
|
||||
from rest_framework import generics, permissions
|
||||
from news import filters, models, serializers
|
||||
|
||||
from rating.tasks import add_rating
|
||||
|
||||
class NewsMixinView:
|
||||
"""News mixin."""
|
||||
|
|
@ -34,15 +34,6 @@ class NewsDetailView(NewsMixinView, generics.RetrieveAPIView):
|
|||
"""Override get_queryset method."""
|
||||
return super().get_queryset().with_extended_related()
|
||||
|
||||
def get(self, request, *args, **kwargs):
|
||||
from rating.tasks import add_rating
|
||||
print('SLUG')
|
||||
add_rating.apply_async(
|
||||
(1, '192.1.1.1.'), countdown=4
|
||||
)
|
||||
return self.retrieve(request, *args, **kwargs)
|
||||
|
||||
|
||||
class NewsTypeListView(generics.ListAPIView):
|
||||
"""NewsType list view."""
|
||||
|
||||
|
|
@ -84,3 +75,6 @@ class NewsBackOfficeRUDView(NewsBackOfficeMixinView,
|
|||
|
||||
serializer_class = serializers.NewsBackOfficeDetailSerializer
|
||||
|
||||
def get(self, request, pk, *args, **kwargs):
|
||||
add_rating(remote_addr=request.META.get('REMOTE_ADDR'), pk=pk, model='news')
|
||||
return self.retrieve(request, *args, **kwargs)
|
||||
|
|
|
|||
|
|
@ -1,14 +1,22 @@
|
|||
from datetime import timedelta
|
||||
from celery.task import periodic_task, Task
|
||||
from celery import task
|
||||
from rating.models import Rating
|
||||
from django.contrib.contenttypes.models import ContentType
|
||||
|
||||
|
||||
|
||||
def add_rating(remote_addr, pk, model):
|
||||
add.apply_async(
|
||||
(remote_addr, pk, model), countdown=60
|
||||
)
|
||||
|
||||
|
||||
@task
|
||||
def add_rating(object_id, ip):
|
||||
print('object_id: ' + str(object_id))
|
||||
print('ip: ' + str(ip))
|
||||
def add(remote_addr, pk, model):
|
||||
rating = Rating()
|
||||
rating.ip = remote_addr
|
||||
rating.object_id = pk
|
||||
rating.content_type = ContentType.objects.get(model=model)
|
||||
rating.save()
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user