diverse fixes und mysql
This commit is contained in:
@@ -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()
|
||||
|
||||
Reference in New Issue
Block a user