-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathload_csvs.py
More file actions
31 lines (25 loc) · 900 Bytes
/
load_csvs.py
File metadata and controls
31 lines (25 loc) · 900 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import csv
from project_globals import get_scoped_session
from models import Aliases, Persons, Emails, EmailReceivers
OBJ_MAP = {
'Persons' : Persons,
'Aliases' : Aliases,
'Emails' : Emails,
'EmailReceivers' : EmailReceivers
}
local_db_session = get_scoped_session()
for obj in ['Persons','Emails','Aliases','EmailReceivers']:
with open('./' + obj + '.csv') as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
if obj == 'Emails':
row['in_full'] = True if 'FULL' in row['in_full'] else False
try:
newobj = OBJ_MAP[obj](**row)
local_db_session.add(newobj)
local_db_session.commit()
local_db_session.begin()
except:
import pdb;pdb.set_trace()
print "Here..."
local_db_session.commit()