replace textfield with tjsonfield in model Review

This commit is contained in:
Anatoly 2019-09-01 15:01:55 +03:00
parent 305da0e008
commit 360f88d996
4 changed files with 46 additions and 4 deletions

View File

@ -68,11 +68,13 @@ class EstablishmentScheduleSerializer(serializers.ModelSerializer):
class ReviewSerializer(serializers.ModelSerializer):
"""Serializer for model Review."""
text_translated = serializers.CharField(read_only=True)
class Meta:
"""Meta class."""
model = review_models.Review
fields = (
'text',
'text_translated',
)

View File

@ -0,0 +1,17 @@
# Generated by Django 2.2.4 on 2019-09-01 11:47
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('review', '0001_initial'),
]
operations = [
migrations.RemoveField(
model_name='review',
name='text',
),
]

View File

@ -0,0 +1,20 @@
# Generated by Django 2.2.4 on 2019-09-01 11:53
from django.db import migrations
import utils.models
class Migration(migrations.Migration):
dependencies = [
('review', '0002_remove_review_text'),
]
operations = [
migrations.AddField(
model_name='review',
name='text',
field=utils.models.TJSONField(blank=True, default=None, help_text='{"en-GB":"Text review"}', null=True, verbose_name='text'),
),
]

View File

@ -3,7 +3,8 @@ from django.core.validators import MinValueValidator, MaxValueValidator
from django.db import models
from django.utils.translation import gettext_lazy as _
from utils.models import BaseAttributes
from utils.models import BaseAttributes, TraslatedFieldsMixin
from utils.models import TJSONField
class ReviewQuerySet(models.QuerySet):
@ -18,7 +19,7 @@ class ReviewQuerySet(models.QuerySet):
return self.filter(vintage=year)
class Review(BaseAttributes):
class Review(BaseAttributes, TraslatedFieldsMixin):
"""Review model"""
TO_INVESTIGATE = 0
TO_REVIEW = 1
@ -33,6 +34,9 @@ class Review(BaseAttributes):
related_name='reviews',
on_delete=models.CASCADE,
verbose_name=_('Reviewer'))
text = TJSONField(
_('text'), null=True, blank=True,
default=None, help_text='{"en-GB":"Text review"}')
content_type = models.ForeignKey(generic.ContentType, on_delete=models.CASCADE)
object_id = models.PositiveIntegerField()
content_object = generic.GenericForeignKey('content_type', 'object_id')
@ -40,7 +44,6 @@ class Review(BaseAttributes):
on_delete=models.CASCADE,
related_name='reviews',
verbose_name=_('Review language'))
text = models.TextField(verbose_name=_('Text'))
status = models.PositiveSmallIntegerField(choices=REVIEW_STATUSES, default=TO_INVESTIGATE)
child = models.ForeignKey('self',
blank=True, default=None, null=True,