fix partner migrations

This commit is contained in:
alex 2019-11-21 14:00:17 +03:00
parent a6bfb3ea6b
commit 9156d9cc35
5 changed files with 33 additions and 48 deletions

View File

@ -1,4 +1,4 @@
# Generated by Django 2.2.7 on 2019-11-21 10:45
# Generated by Django 2.2.7 on 2019-11-21 10:59
from django.db import migrations, models
import django.db.models.deletion

View File

@ -1,19 +0,0 @@
# Generated by Django 2.2.7 on 2019-11-21 10:45
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('partner', '0003_auto_20191121_1045'),
]
operations = [
migrations.AlterField(
model_name='partner',
name='establishment',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='partners', to='establishment.Establishment', verbose_name='Establishment'),
),
]

View File

@ -24,6 +24,8 @@ class Partner(ProjectBaseMixin):
verbose_name=_('Establishment'),
related_name='partners',
on_delete=models.CASCADE,
blank=True,
null=True,
)
type = models.PositiveSmallIntegerField(choices=MODEL_TYPES, default=PARTNER)
starting_date = models.DateField(_('starting date'), blank=True, null=True)

View File

@ -12,20 +12,21 @@ def transfer_partner():
).values(
'id',
'establishment_id',
# 'aasm_state',
# 'created_at',
# 'establishment_id',
# 'mark',
# 'vintage',
'partnership_name',
'partnership_icon',
'backlink_url',
'created_at',
'type',
'starting_date',
'expiry_date',
'price_per_month',
)
# queryset = EstablishmentBacklinks.objects.all() # Partner and Sponsor
serialized_data = PartnerSerializer(data=list(queryset.values()), many=True)
serialized_data = PartnerSerializer(data=list(queryset), many=True)
if serialized_data.is_valid():
serialized_data.save()
else:
pprint(f"News serializer errors: {serialized_data.errors}")
pprint(f"Partner serializer errors: {serialized_data.errors}")
data_types = {

View File

@ -2,27 +2,28 @@ from rest_framework import serializers
from partner.models import Partner
class PartnerSerializer(serializers.ModelSerializer):
backlink_url = serializers.CharField(source="url")
partnership_icon = serializers.CharField()
partnership_name = serializers.CharField()
class PartnerSerializer(serializers.Serializer):
pass
# 'id',
# 'establishment_id',
# 'partnership_name',
# 'partnership_icon',
# 'backlink_url',
# 'created_at',
# 'type',
# 'starting_date',
# 'expiry_date',
# 'price_per_month',
class Meta:
model = Partner
fields = (
"backlink_url",
"partnership_icon",
"partnership_name"
)
def validate(self, data):
data["image"] = partnership_to_image_url.get(data["partnership_name"]).get(data["partnership_icon"])
data.pop("partnership_name")
data.pop("partnership_icon")
return data
def create(self, validated_data):
return Partner.objects.create(**validated_data)
# def validate(self, data):
# data["image"] = partnership_to_image_url.get(data["partnership_name"]).get(data["partnership_icon"])
# data.pop("partnership_name")
# data.pop("partnership_icon")
# return data
#
# def create(self, validated_data):
# return Partner.objects.create(**validated_data)
partnership_to_image_url = {