base models and funcs

This commit is contained in:
alex 2019-10-24 17:08:00 +03:00
parent 449bf0f28c
commit 287578eb9e
6 changed files with 104 additions and 53 deletions

View File

@ -10,7 +10,6 @@ field[1] - название поля в таблице legacy
"""
card = {
"EstablishmentType": {
"data_type": "dictionaries",
@ -53,7 +52,7 @@ card = {
(("location", None),
("Address", "address", None, None)),
],
"Establishments": [#TODO правильно ли заполнена связь с EstablishmentType - ?
"Establishments": [ # TODO правильно ли заполнена связь с EstablishmentType - ?
(("type", "type"),
("EstablishmentType", "establishment_type", "id", "django.db.models.PositiveIntegerField"))
]
@ -71,7 +70,7 @@ card = {
},
"Menu": {
"data_type": "objects",
"dependencies": ("Establishment", ),
"dependencies": ("Establishment",),
"fields": {
"Menus": {
"category": ("name", "django.db.models.TJSONField")
@ -86,12 +85,12 @@ card = {
},
"ContactPhone": {
"data_type": "objects",
"dependencies": ("Establishment", ),
"dependencies": ("Establishment",),
"fields": {
"Establishments": {
"phone": "phone"
},
"relations": { #TODO правильно ли заполнена связь с Establishment - ?
"relations": { # TODO правильно ли заполнена связь с Establishment - ?
"Establishments": [
(("id", "id"),
("Establishment", "establishment", "id", "django.db.models.PositiveIntegerField"))
@ -102,7 +101,7 @@ card = {
"ContactEmail": {
"data_type": "objects",
"dependencies": ("Establishment", ),
"dependencies": ("Establishment",),
"fields": {
"EstablishmentInfos": {
"email": "email"
@ -117,5 +116,4 @@ card = {
}
}
used_apps = ("review", "location", "collection", "main", "timetable", "favorites", "comment", )
used_apps = ("review", "location", "collection", "main", "timetable", "favorites", "comment",)

View File

@ -0,0 +1,18 @@
from pprint import pprint
from transfer.serializers.establishment import EstablishmentSerializer
def transfer_establishment():
result = []
serialized_data = EstablishmentSerializer(data=result, many=True)
if serialized_data.is_valid():
serialized_data.save()
else:
pprint(f"Establishment serializer errors: {serialized_data.errors}")
data_types = {
"establishment": [transfer_establishment]
}

View File

@ -15,7 +15,8 @@ class Command(BaseCommand):
'subscriber',
'recipe',
'partner',
'gallery'
'gallery',
'establishment',
]
def handle(self, *args, **options):

View File

@ -0,0 +1,26 @@
from rest_framework import serializers
from establishment.models import Establishment
class EstablishmentSerializer(serializers.ModelSerializer):
class Meta:
model = Establishment
fields = '__all__'
def validate(self, data):
pass
# data.update({
# 'state': self.get_state(data),
# 'template': self.get_template(data),
# 'title': self.get_title(data),
# 'description': self.get_description(data),
# })
# data.pop('body')
# data.pop('locale')
# return data
def create(self, validated_data):
pass
# return News.objects.create(**validated_data)

View File

@ -1,7 +1,7 @@
from rest_framework import serializers
from news.models import News
from utils.legacy_parser import parse_legacy_content
from utils.legacy_parser import parse_legacy_news_content
class NewsSerializer(serializers.ModelSerializer):
@ -66,5 +66,5 @@ class NewsSerializer(serializers.ModelSerializer):
def get_description(data):
content = None
if data['body']:
content = parse_legacy_content(data['body'])
content = parse_legacy_news_content(data['body'])
return {data['locale']: content}

View File

@ -1,7 +1,7 @@
import yaml
def parse_legacy_content(legacy_content):
def parse_legacy_news_content(legacy_content):
clear_str = '!ruby/hash:ActiveSupport::HashWithIndifferentAccess'
content_dict = yaml.safe_load(legacy_content.replace(clear_str, ''))
result = ''
@ -10,3 +10,11 @@ def parse_legacy_content(legacy_content):
except KeyError:
pass
return result
def parse_legacy_schedule_content(legacy_content):
clear_str = '!ruby/hash:ActiveSupport::HashWithIndifferentAccess'
content_dict = yaml.safe_load(legacy_content.replace(clear_str, ''))
result = ''
# TODO: вернуть валидные данные расписания для новой модели
return result