Add back for review
This commit is contained in:
parent
c80b53a0fc
commit
5a058c14f4
20
apps/review/migrations/0004_review_country.py
Normal file
20
apps/review/migrations/0004_review_country.py
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
# Generated by Django 2.2.4 on 2019-10-17 12:17
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('location', '0012_data_migrate'),
|
||||||
|
('review', '0003_review_text'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='review',
|
||||||
|
name='country',
|
||||||
|
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='country', to='location.Country', verbose_name='Country'),
|
||||||
|
),
|
||||||
|
]
|
||||||
|
|
@ -65,6 +65,9 @@ class Review(BaseAttributes, TranslatedFieldsMixin):
|
||||||
validators=[MinValueValidator(1900),
|
validators=[MinValueValidator(1900),
|
||||||
MaxValueValidator(2100)])
|
MaxValueValidator(2100)])
|
||||||
|
|
||||||
|
country = models.ForeignKey('location.Country', on_delete=models.CASCADE,
|
||||||
|
related_name='country', verbose_name=_('Country'),
|
||||||
|
null=True)
|
||||||
objects = ReviewQuerySet.as_manager()
|
objects = ReviewQuerySet.as_manager()
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|
|
||||||
18
apps/review/serializers/back.py
Normal file
18
apps/review/serializers/back.py
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
"""Review app common serializers."""
|
||||||
|
from review import models
|
||||||
|
from rest_framework import serializers
|
||||||
|
|
||||||
|
|
||||||
|
class ReviewBaseSerializer(serializers.ModelSerializer):
|
||||||
|
class Meta:
|
||||||
|
model = models.Review
|
||||||
|
fields = ('id',
|
||||||
|
'reviewer',
|
||||||
|
'text',
|
||||||
|
'language',
|
||||||
|
'status',
|
||||||
|
'child',
|
||||||
|
'published_at',
|
||||||
|
'vintage',
|
||||||
|
'country'
|
||||||
|
)
|
||||||
11
apps/review/urls/back.py
Normal file
11
apps/review/urls/back.py
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
"""Back review URLs"""
|
||||||
|
from django.urls import path
|
||||||
|
|
||||||
|
from review.views import back as views
|
||||||
|
|
||||||
|
app_name = 'review'
|
||||||
|
|
||||||
|
urlpatterns = [
|
||||||
|
path('', views.ReviewLstView.as_view(), name='review-list-create'),
|
||||||
|
path('<int:id>/', views.ReviewRUDView.as_view(), name='review-crud'),
|
||||||
|
]
|
||||||
19
apps/review/views/back.py
Normal file
19
apps/review/views/back.py
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
from rest_framework import generics, permissions
|
||||||
|
from review.serializers import back as serializers
|
||||||
|
from review import models
|
||||||
|
from utils.permissions import IsReviewerManager
|
||||||
|
|
||||||
|
|
||||||
|
class ReviewLstView(generics.ListCreateAPIView):
|
||||||
|
"""Comment list create view."""
|
||||||
|
serializer_class = serializers.ReviewBaseSerializer
|
||||||
|
queryset = models.Review.objects.all()
|
||||||
|
permission_classes = [permissions.IsAuthenticatedOrReadOnly,]
|
||||||
|
|
||||||
|
|
||||||
|
class ReviewRUDView(generics.RetrieveUpdateDestroyAPIView):
|
||||||
|
"""Comment RUD view."""
|
||||||
|
serializer_class = serializers.ReviewBaseSerializer
|
||||||
|
queryset = models.Review.objects.all()
|
||||||
|
permission_classes = [IsReviewerManager]
|
||||||
|
lookup_field = 'id'
|
||||||
|
|
@ -10,4 +10,5 @@ urlpatterns = [
|
||||||
path('news/', include('news.urls.back')),
|
path('news/', include('news.urls.back')),
|
||||||
path('account/', include('account.urls.back')),
|
path('account/', include('account.urls.back')),
|
||||||
path('comment/', include('comment.urls.back')),
|
path('comment/', include('comment.urls.back')),
|
||||||
|
path('review/', include('review.urls.back')),
|
||||||
]
|
]
|
||||||
Loading…
Reference in New Issue
Block a user