diverse fixes und mysql

This commit is contained in:
uwsgi
2017-02-15 10:32:45 +01:00
parent 49ac42b9a5
commit bdfa16728d
11 changed files with 75 additions and 20 deletions

View File

@@ -2,6 +2,7 @@ import sys
import json
from src.articles.model import Article, FullArticleSchema
from src.sections.model import Section, FullSectionSchema
from src.organizations.model import Organization, FullOrganizationSchema
from src.database import db_session
from sqlalchemy.exc import IntegrityError
@@ -15,6 +16,8 @@ def load_article(a):
def load_section(s):
return Section.deserialize(s[0])
def load_organization(s):
return Organization.deserialize(s[0])
file = open(sys.argv[1], "r")
@@ -29,6 +32,8 @@ if isinstance(data,dict):
articles=data["articles"]
if data.has_key("sections"):
sections=data["sections"]
if data.has_key("organizations"):
organizations=data["organizations"]
else:
articles=data
@@ -37,15 +42,21 @@ else:
articles= map (load_article, articles)
if sections is not None:
sections=map(load_section, sections)
if organizations is not None:
organizations=map(load_organization,organizations)
if organizations is not None:
for s in organizations:
if not isinstance(s,Organization):
print type(s)
try:
db_session.add(s)
db_session.commit()
except IntegrityError:
db_session.rollback()
for a in articles:
try:
db_session.add(a)
db_session.commit()
except IntegrityError:
db_session.rollback()
finally:
db_session.rollback()
if sections is not None:
for s in sections:
if not isinstance(s,Section):
@@ -56,5 +67,15 @@ if sections is not None:
except IntegrityError:
db_session.rollback()
for a in articles:
try:
db_session.add(a)
db_session.commit()
except IntegrityError:
db_session.rollback()
finally:
db_session.rollback()
file.close()