reorganize partner models

This commit is contained in:
Kuroshini 2020-01-29 15:21:51 +03:00
parent 63fa81385e
commit 28d4a5ae42
4 changed files with 46 additions and 5 deletions

View File

@ -0,0 +1,37 @@
# Generated by Django 2.2.7 on 2020-01-29 12:01
import django.contrib.postgres.fields
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('partner', '0005_auto_20200128_1754'),
]
operations = [
migrations.RemoveField(
model_name='partner',
name='image',
),
migrations.RemoveField(
model_name='partner',
name='url',
),
migrations.AddField(
model_name='partner',
name='images',
field=django.contrib.postgres.fields.ArrayField(base_field=models.URLField(verbose_name='Partner image URL'), blank=True, default=None, null=True, size=None),
),
migrations.AddField(
model_name='partnertoestablishment',
name='image',
field=models.URLField(null=True, verbose_name='Partner image URL'),
),
migrations.AddField(
model_name='partnertoestablishment',
name='url',
field=models.URLField(blank=True, default=None, null=True, verbose_name='Establishment to Partner URL'),
),
]

View File

@ -1,6 +1,7 @@
from django.db import models from django.db import models
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _
from django.utils import timezone from django.utils import timezone
from django.contrib.postgres.fields import ArrayField
from establishment.models import Establishment from establishment.models import Establishment
from utils.models import ImageMixin, ProjectBaseMixin from utils.models import ImageMixin, ProjectBaseMixin
@ -31,8 +32,9 @@ class Partner(ProjectBaseMixin):
old_id = models.PositiveIntegerField(_('old id'), blank=True, null=True, default=None) old_id = models.PositiveIntegerField(_('old id'), blank=True, null=True, default=None)
name = models.CharField(_('name'), max_length=255, blank=True, null=True) name = models.CharField(_('name'), max_length=255, blank=True, null=True)
url = models.URLField(verbose_name=_('Partner URL')) images = ArrayField(
image = models.URLField(verbose_name=_('Partner image URL'), null=True) models.URLField(verbose_name=_('Partner image URL')), blank=True, null=True, default=None,
)
establishment = models.ManyToManyField('establishment.Establishment', related_name='partners', establishment = models.ManyToManyField('establishment.Establishment', related_name='partners',
through='PartnerToEstablishment', through='PartnerToEstablishment',
verbose_name=_('Establishments')) verbose_name=_('Establishments'))
@ -49,7 +51,7 @@ class Partner(ProjectBaseMixin):
verbose_name_plural = _('partners') verbose_name_plural = _('partners')
def __str__(self): def __str__(self):
return f'{self.url}' return f'{self.name}'
@property @property
def type_display(self): def type_display(self):
@ -59,5 +61,7 @@ class Partner(ProjectBaseMixin):
class PartnerToEstablishment(models.Model): class PartnerToEstablishment(models.Model):
partner_bind_date = models.DateTimeField(default=timezone.now, editable=False, partner_bind_date = models.DateTimeField(default=timezone.now, editable=False,
verbose_name=_('Date partner binded')) verbose_name=_('Date partner binded'))
url = models.URLField(verbose_name=_('Establishment to Partner URL'), null=True, blank=True, default=None)
image = models.URLField(verbose_name=_('Partner image URL'), null=True)
partner = models.ForeignKey(Partner, on_delete=models.CASCADE, null=True) partner = models.ForeignKey(Partner, on_delete=models.CASCADE, null=True)
establishment = models.ForeignKey('establishment.Establishment', on_delete=models.CASCADE, null=True) establishment = models.ForeignKey('establishment.Establishment', on_delete=models.CASCADE, null=True)

View File

@ -23,7 +23,7 @@ class BackPartnerSerializer(serializers.ModelSerializer):
'id', 'id',
'name', 'name',
'url', 'url',
'image', # 'image',
'type', 'type',
'type_display', 'type_display',
'starting_date', 'starting_date',

View File

@ -11,6 +11,6 @@ class PartnerSerializer(serializers.ModelSerializer):
model = models.Partner model = models.Partner
fields = ( fields = (
'id', 'id',
'image', # 'image',
'url' 'url'
) )