added fields to model Collection, refactored Collection serializer,

This commit is contained in:
Anatoly 2019-08-23 12:59:10 +03:00
parent aa37e0a233
commit e88fea10e7
3 changed files with 37 additions and 8 deletions

View File

@ -0,0 +1,26 @@
# Generated by Django 2.2.4 on 2019-08-23 09:35
import django.contrib.postgres.fields.jsonb
from django.db import migrations
import easy_thumbnails.fields
import utils.methods
class Migration(migrations.Migration):
dependencies = [
('collection', '0002_collection_is_publish'),
]
operations = [
migrations.AddField(
model_name='collection',
name='block_size',
field=django.contrib.postgres.fields.jsonb.JSONField(blank=True, default=None, help_text='{"width": "250px", "height":"250px"}', null=True, verbose_name='collection block properties'),
),
migrations.AddField(
model_name='collection',
name='image',
field=easy_thumbnails.fields.ThumbnailerImageField(blank=True, default=None, null=True, upload_to=utils.methods.image_path, verbose_name='Image'),
),
]

View File

@ -1,7 +1,8 @@
from django.contrib.postgres.fields import JSONField
from django.db import models
from django.utils.translation import gettext_lazy as _
from django.contrib.postgres.fields import JSONField
from utils.models import ProjectBaseMixin
from utils.models import ProjectBaseMixin, ImageMixin
# Mixins
@ -37,7 +38,8 @@ class CollectionQuerySet(models.QuerySet):
return self.filter(is_publish=True)
class Collection(ProjectBaseMixin, CollectionNameMixin, CollectionDateMixin):
class Collection(ProjectBaseMixin, CollectionNameMixin,
ImageMixin, CollectionDateMixin):
"""Collection model."""
is_publish = models.BooleanField(
default=False, verbose_name=_('Publish status'))
@ -52,6 +54,9 @@ class Collection(ProjectBaseMixin, CollectionNameMixin, CollectionDateMixin):
default=None, help_text='{"key":"value"}')
country = models.ForeignKey(
'location.Country', verbose_name=_('country'), on_delete=models.CASCADE)
block_size = JSONField(
_('collection block properties'), null=True, blank=True,
default=None, help_text='{"width": "250px", "height":"250px"}')
objects = CollectionQuerySet.as_manager()

View File

@ -8,12 +8,10 @@ class CollectionSerializer(serializers.ModelSerializer):
class Meta:
model = models.Collection
fields = [
'id',
'name',
'start',
'end',
'filters',
'selectors',
'targets',
'block_size',
'image'
]