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),
|
||||
MaxValueValidator(2100)])
|
||||
|
||||
country = models.ForeignKey('location.Country', on_delete=models.CASCADE,
|
||||
related_name='country', verbose_name=_('Country'),
|
||||
null=True)
|
||||
objects = ReviewQuerySet.as_manager()
|
||||
|
||||
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('account/', include('account.urls.back')),
|
||||
path('comment/', include('comment.urls.back')),
|
||||
path('review/', include('review.urls.back')),
|
||||
]
|
||||
Loading…
Reference in New Issue
Block a user