added migrations and added migration wine colors
This commit is contained in:
parent
e6f9e388aa
commit
4a38bec2a7
|
|
@ -21,5 +21,5 @@ class Migration(migrations.Migration):
|
||||||
]
|
]
|
||||||
|
|
||||||
operations = [
|
operations = [
|
||||||
migrations.RunPython(load_data_from_sql, revert_data),
|
# migrations.RunPython(load_data_from_sql, revert_data),
|
||||||
]
|
]
|
||||||
|
|
|
||||||
52
apps/location/migrations/0021_auto_20191101_1323.py
Normal file
52
apps/location/migrations/0021_auto_20191101_1323.py
Normal file
|
|
@ -0,0 +1,52 @@
|
||||||
|
# Generated by Django 2.2.4 on 2019-11-01 13:23
|
||||||
|
|
||||||
|
import django.contrib.gis.db.models.fields
|
||||||
|
from django.db import migrations, models
|
||||||
|
import utils.models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('location', '0020_merge_20191030_1714'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='WineSubRegion',
|
||||||
|
fields=[
|
||||||
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('name', models.CharField(max_length=255, verbose_name='name')),
|
||||||
|
],
|
||||||
|
options={
|
||||||
|
'verbose_name': 'wine region',
|
||||||
|
'verbose_name_plural': 'wine regions',
|
||||||
|
},
|
||||||
|
),
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='WineVillage',
|
||||||
|
fields=[
|
||||||
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('name', models.CharField(max_length=255, verbose_name='name')),
|
||||||
|
('description', utils.models.TJSONField(help_text='{"en-GB":"some text"}', verbose_name='description')),
|
||||||
|
],
|
||||||
|
options={
|
||||||
|
'verbose_name': 'wine village',
|
||||||
|
'verbose_name_plural': 'wine villages',
|
||||||
|
},
|
||||||
|
),
|
||||||
|
migrations.RemoveField(
|
||||||
|
model_name='wineappellation',
|
||||||
|
name='wine_region',
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='wineregion',
|
||||||
|
name='coordinates',
|
||||||
|
field=django.contrib.gis.db.models.fields.PointField(blank=True, default=None, null=True, srid=4326, verbose_name='Coordinates'),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='wineregion',
|
||||||
|
name='name',
|
||||||
|
field=models.CharField(max_length=255, verbose_name='name'),
|
||||||
|
),
|
||||||
|
]
|
||||||
33
apps/location/migrations/0022_auto_20191101_1323.py
Normal file
33
apps/location/migrations/0022_auto_20191101_1323.py
Normal file
|
|
@ -0,0 +1,33 @@
|
||||||
|
# Generated by Django 2.2.4 on 2019-11-01 13:23
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('product', '0003_auto_20191101_1323'),
|
||||||
|
('location', '0021_auto_20191101_1323'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.DeleteModel(
|
||||||
|
name='WineAppellation',
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='winevillage',
|
||||||
|
name='wine_region',
|
||||||
|
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='location.WineRegion', verbose_name='wine region'),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='winevillage',
|
||||||
|
name='wine_sub_region',
|
||||||
|
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='location.WineSubRegion', verbose_name='wine sub region'),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='winesubregion',
|
||||||
|
name='country',
|
||||||
|
field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='location.Country', verbose_name='country'),
|
||||||
|
),
|
||||||
|
]
|
||||||
106
apps/product/migrations/0003_auto_20191101_1323.py
Normal file
106
apps/product/migrations/0003_auto_20191101_1323.py
Normal file
|
|
@ -0,0 +1,106 @@
|
||||||
|
# Generated by Django 2.2.4 on 2019-11-01 13:23
|
||||||
|
|
||||||
|
import django.contrib.gis.db.models.fields
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
import utils.models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('location', '0021_auto_20191101_1323'),
|
||||||
|
('product', '0002_product_slug'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='Characteristic',
|
||||||
|
fields=[
|
||||||
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('name', utils.models.TJSONField(blank=True, help_text='{"en-GB":"some text"}', null=True, verbose_name='name')),
|
||||||
|
('value', models.CharField(blank=True, max_length=255, null=True, verbose_name='value')),
|
||||||
|
('priority', models.IntegerField(default=None, null=True, unique=True)),
|
||||||
|
],
|
||||||
|
options={
|
||||||
|
'verbose_name': 'characteristic',
|
||||||
|
'verbose_name_plural': 'characteristics',
|
||||||
|
},
|
||||||
|
bases=(utils.models.TranslatedFieldsMixin, models.Model),
|
||||||
|
),
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='Unit',
|
||||||
|
fields=[
|
||||||
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('name', models.CharField(max_length=255, verbose_name='name')),
|
||||||
|
('value', models.CharField(max_length=255, verbose_name='value')),
|
||||||
|
],
|
||||||
|
options={
|
||||||
|
'verbose_name': 'unit',
|
||||||
|
'verbose_name_plural': 'units',
|
||||||
|
},
|
||||||
|
),
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='WineStandard',
|
||||||
|
fields=[
|
||||||
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('name', models.CharField(max_length=255, verbose_name='name')),
|
||||||
|
('standard_type', models.CharField(choices=[('Appellation', 'Appellation'), ('Classification', 'Classification'), ('WineQuality', 'Wine quality'), ('YardClassification', 'Yard classification')], max_length=30, verbose_name='standard type')),
|
||||||
|
('coordinates', django.contrib.gis.db.models.fields.PointField(blank=True, default=None, null=True, srid=4326, verbose_name='Coordinates')),
|
||||||
|
],
|
||||||
|
options={
|
||||||
|
'verbose_name': 'wine standard',
|
||||||
|
'verbose_name_plural': 'wine standards',
|
||||||
|
},
|
||||||
|
),
|
||||||
|
migrations.RemoveField(
|
||||||
|
model_name='product',
|
||||||
|
name='wine_appellation',
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='product',
|
||||||
|
name='wine_village',
|
||||||
|
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='location.WineVillage', verbose_name='wine appellation'),
|
||||||
|
),
|
||||||
|
migrations.RemoveField(
|
||||||
|
model_name='product',
|
||||||
|
name='characteristics',
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='product',
|
||||||
|
name='establishment',
|
||||||
|
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='products', to='establishment.Establishment', verbose_name='establishment'),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='product',
|
||||||
|
name='name',
|
||||||
|
field=models.CharField(default=None, max_length=255, null=True, verbose_name='name'),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='productsubtype',
|
||||||
|
name='index_name',
|
||||||
|
field=models.CharField(choices=[('rum', 'Rum'), ('other', 'Other'), ('extra brut', 'extra brut'), ('brut', 'brut'), ('brut nature', 'brut nature'), ('demi-sec', 'demi-sec'), ('Extra Dry', 'Extra Dry'), ('dosage zero', 'dosage zero'), ('sec', 'sec'), ('doux', 'doux'), ('moelleux', 'moelleux')], db_index=True, max_length=50, unique=True, verbose_name='Index name'),
|
||||||
|
),
|
||||||
|
migrations.CreateModel(
|
||||||
|
name='WineClassification',
|
||||||
|
fields=[
|
||||||
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||||
|
('name', models.CharField(max_length=255, verbose_name='name')),
|
||||||
|
('standard', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='product.WineStandard', verbose_name='standard')),
|
||||||
|
],
|
||||||
|
options={
|
||||||
|
'verbose_name': 'wine classification',
|
||||||
|
'verbose_name_plural': 'wine classifications',
|
||||||
|
},
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='product',
|
||||||
|
name='wine_standard',
|
||||||
|
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='product.WineStandard', verbose_name='wine standard'),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='product',
|
||||||
|
name='characteristics',
|
||||||
|
field=models.ManyToManyField(to='product.Characteristic', verbose_name='characteristics'),
|
||||||
|
),
|
||||||
|
]
|
||||||
|
|
@ -234,9 +234,9 @@ class Characteristic(TranslatedFieldsMixin, models.Model):
|
||||||
|
|
||||||
STR_FIELD_NAME = 'name'
|
STR_FIELD_NAME = 'name'
|
||||||
|
|
||||||
name = TJSONField(_('name'),
|
name = TJSONField(_('name'), null=True, blank=True,
|
||||||
help_text='{"en-GB":"some text"}')
|
help_text='{"en-GB":"some text"}')
|
||||||
value = models.CharField(max_length=255,
|
value = models.CharField(max_length=255, null=True, blank=True,
|
||||||
verbose_name=_('value'))
|
verbose_name=_('value'))
|
||||||
# unit = models.ForeignKey('Unit', on_delete=models.PROTECT)
|
# unit = models.ForeignKey('Unit', on_delete=models.PROTECT)
|
||||||
priority = models.IntegerField(unique=True, null=True, default=None)
|
priority = models.IntegerField(unique=True, null=True, default=None)
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
from pprint import pprint
|
from pprint import pprint
|
||||||
|
|
||||||
from transfer.models import EstablishmentBacklinks
|
from transfer.models import EstablishmentBacklinks, WineColor
|
||||||
from transfer.serializers.partner import PartnerSerializer
|
from transfer.serializers.partner import PartnerSerializer
|
||||||
|
from transfer.serializers.product import WineColorSerializer
|
||||||
|
|
||||||
|
|
||||||
def transfer_partner():
|
def transfer_partner():
|
||||||
|
|
@ -14,6 +15,17 @@ def transfer_partner():
|
||||||
pprint(f"News serializer errors: {serialized_data.errors}")
|
pprint(f"News serializer errors: {serialized_data.errors}")
|
||||||
|
|
||||||
|
|
||||||
|
def transfer_wine_color():
|
||||||
|
queryset = WineColor.objects.all()
|
||||||
|
serialized_data = WineColorSerializer(data=list(queryset.values()),
|
||||||
|
many=True)
|
||||||
|
if serialized_data.is_valid():
|
||||||
|
serialized_data.save()
|
||||||
|
else:
|
||||||
|
pprint(f"CharacteristicSerializer errors: {serialized_data.errors}")
|
||||||
|
|
||||||
|
|
||||||
data_types = {
|
data_types = {
|
||||||
"partner": [transfer_partner]
|
"partner": [transfer_partner],
|
||||||
|
"wine_color": [transfer_wine_color],
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,8 @@ class Command(BaseCommand):
|
||||||
'overlook',
|
'overlook',
|
||||||
'tmp',
|
'tmp',
|
||||||
'menu',
|
'menu',
|
||||||
'location_establishment'
|
'location_establishment',
|
||||||
|
'wine_color',
|
||||||
]
|
]
|
||||||
|
|
||||||
def handle(self, *args, **options):
|
def handle(self, *args, **options):
|
||||||
|
|
|
||||||
|
|
@ -902,7 +902,6 @@ class WineColor(MigrateMixin):
|
||||||
|
|
||||||
name = models.CharField(max_length=255)
|
name = models.CharField(max_length=255)
|
||||||
order_number = models.IntegerField(null=True, blank=True)
|
order_number = models.IntegerField(null=True, blank=True)
|
||||||
fra_encima_id = models.IntegerField(null=True, blank=True)
|
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
managed = False
|
managed = False
|
||||||
|
|
|
||||||
|
|
@ -2,27 +2,25 @@ from rest_framework import serializers
|
||||||
from product.models import Characteristic
|
from product.models import Characteristic
|
||||||
|
|
||||||
|
|
||||||
class RecipeSerializer(serializers.ModelSerializer):
|
class WineColorSerializer(serializers.ModelSerializer):
|
||||||
|
|
||||||
|
NAME = 'Wine color'
|
||||||
|
|
||||||
|
name = serializers.CharField(allow_null=True)
|
||||||
|
order_number = serializers.IntegerField(allow_null=True)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Characteristic
|
model = Characteristic
|
||||||
fields = (
|
fields = (
|
||||||
"body",
|
'name',
|
||||||
"title",
|
'value',
|
||||||
"state",
|
'priority',
|
||||||
"created_at",
|
'order_number',
|
||||||
'locale',
|
|
||||||
)
|
)
|
||||||
|
|
||||||
def validate(self, data):
|
def validate(self, attrs):
|
||||||
data["state"] = self.get_state(data)
|
attrs['value'] = attrs['name']
|
||||||
data["title"] = self.get_title(data)
|
attrs['name'] = {'en-GB': self.NAME}
|
||||||
data["description"] = self.get_description(data)
|
attrs['priority'] = attrs['order_number']
|
||||||
data.pop("body")
|
attrs.pop('order_number')
|
||||||
data.pop("locale")
|
return attrs
|
||||||
return data
|
|
||||||
|
|
||||||
def create(self, validated_data):
|
|
||||||
return Recipe.objects.create(**validated_data)
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user