migration script fix
This commit is contained in:
parent
502f7cd9a7
commit
0b654d8b02
4
.gitignore
vendored
4
.gitignore
vendored
|
@ -137,4 +137,6 @@ Pipfile.lock
|
||||||
|
|
||||||
migration/data
|
migration/data
|
||||||
migration/content/**/*.md
|
migration/content/**/*.md
|
||||||
.obsidian
|
.obsidian
|
||||||
|
|
||||||
|
*.zip
|
|
@ -34,3 +34,4 @@ Also see `Dockerfile`
|
||||||
# How to do an authorized request
|
# How to do an authorized request
|
||||||
|
|
||||||
Put the header 'Auth' with token from signInQuery or registerQuery.
|
Put the header 'Auth' with token from signInQuery or registerQuery.
|
||||||
|
|
||||||
|
|
|
@ -16,16 +16,18 @@ def migrate(entry):
|
||||||
'slug': entry['slug'],
|
'slug': entry['slug'],
|
||||||
# 'createdBy': entry['createdBy'],
|
# 'createdBy': entry['createdBy'],
|
||||||
# 'createdAt': date_parse(entry['createdAt']),
|
# 'createdAt': date_parse(entry['createdAt']),
|
||||||
'title': entry['title'], #.lower(),
|
'title': entry['title'].replace(' ', ' '), #.lower(),
|
||||||
'children': [],
|
'children': [],
|
||||||
'community' : Community.default_community.slug,
|
'community' : Community.default_community.slug,
|
||||||
'body' : entry.get('description')
|
'body' : entry.get('description')
|
||||||
}
|
}
|
||||||
try:
|
try:
|
||||||
with local_session() as session:
|
with local_session() as session:
|
||||||
topic = session.query(Topic).filter(Topic.slug == entry['slug']).first()
|
topic = session.query(Topic).filter(Topic.slug == topic_dict['slug']).first()
|
||||||
if not topic:
|
if not topic:
|
||||||
topic = Topic.create(**topic_dict)
|
topic = session.query(Topic).filter(Topic.title == topic_dict['title']).first()
|
||||||
|
if not topic:
|
||||||
|
topic = Topic.create(**topic_dict)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(e)
|
print(e)
|
||||||
raise e
|
raise e
|
||||||
|
|
|
@ -5,36 +5,39 @@ from orm import Topic, Community
|
||||||
from dateutil.parser import parse as date_parse
|
from dateutil.parser import parse as date_parse
|
||||||
|
|
||||||
def migrate(entry):
|
def migrate(entry):
|
||||||
'''
|
'''
|
||||||
type Topic {
|
type Topic {
|
||||||
slug: String! # ID
|
slug: String! # ID
|
||||||
createdBy: Int! # User
|
createdBy: Int! # User
|
||||||
createdAt: DateTime!
|
createdAt: DateTime!
|
||||||
title: String
|
title: String
|
||||||
parents: [String] # NOTE: topic can have parent topics
|
parents: [String] # NOTE: topic can have parent topics
|
||||||
children: [String] # and children
|
children: [String] # and children
|
||||||
}
|
}
|
||||||
'''
|
'''
|
||||||
if type(entry['createdAt']) == type(''):
|
if type(entry['createdAt']) == type(''):
|
||||||
ts = date_parse(entry['createdAt'])
|
ts = date_parse(entry['createdAt'])
|
||||||
else:
|
else:
|
||||||
ts = datetime.fromtimestamp(entry['createdAt']/1000)
|
ts = datetime.fromtimestamp(entry['createdAt']/1000)
|
||||||
topic_dict = {
|
topic_dict = {
|
||||||
'slug': entry['slug'],
|
'slug': entry['slug'],
|
||||||
# 'createdBy': entry['createdBy'],
|
# 'createdBy': entry['createdBy'],
|
||||||
# 'createdAt': ts,
|
# 'createdAt': ts,
|
||||||
'title': entry['title'], # .lower(),
|
'title': entry['title'].replace(' ', ' '), # .lower(),
|
||||||
'children': [],
|
'children': [],
|
||||||
'community' : Community.default_community.slug,
|
'community' : Community.default_community.slug,
|
||||||
'body' : entry.get('description')
|
'body' : entry.get('description')
|
||||||
}
|
}
|
||||||
try:
|
try:
|
||||||
with local_session() as session:
|
with local_session() as session:
|
||||||
topic = session.query(Topic).filter(Topic.slug == entry['slug']).first()
|
topic = session.query(Topic).filter(Topic.slug == topic_dict['slug']).first()
|
||||||
if not topic: topic = Topic.create(**topic_dict)
|
if not topic:
|
||||||
except Exception as e:
|
topic = session.query(Topic).filter(Topic.title == topic_dict['title']).first()
|
||||||
print(e)
|
if not topic:
|
||||||
raise e
|
topic = Topic.create(**topic_dict)
|
||||||
|
except Exception as e:
|
||||||
topic_dict['tag_id'] = entry['_id']
|
print(e)
|
||||||
return topic_dict
|
raise e
|
||||||
|
|
||||||
|
topic_dict['tag_id'] = entry['_id']
|
||||||
|
return topic_dict
|
||||||
|
|
Loading…
Reference in New Issue
Block a user