2020-02-07 21:23:37 +00:00
|
|
|
#!/usr/env/bin python3
|
|
|
|
|
|
|
|
from django.core.management.base import BaseCommand
|
|
|
|
from django.utils import timezone
|
|
|
|
import psycopg2 as pg
|
2020-02-09 14:40:46 +00:00
|
|
|
import psycopg2.extras as pge
|
2020-02-07 21:23:37 +00:00
|
|
|
import json
|
|
|
|
|
|
|
|
|
|
|
|
class Command(BaseCommand):
|
|
|
|
"""
|
|
|
|
Command for importing the database of NK15.
|
|
|
|
Need to be run by a user with a registered role in postgres for the database nk15.
|
|
|
|
"""
|
|
|
|
help = 'Displays current time'
|
|
|
|
|
|
|
|
def add_arguments(self,parser):
|
|
|
|
parser.add_argument("--map",type=str,help="json mapping of table header to field models")
|
|
|
|
|
|
|
|
|
|
|
|
def handle(self, *args, **options):
|
|
|
|
map_file= options.get("map",None)
|
2020-02-09 14:40:46 +00:00
|
|
|
with open(map_file,'r') as f:
|
2020-02-07 21:23:37 +00:00
|
|
|
map_dict = json.load(f);
|
|
|
|
|
2020-02-09 14:40:46 +00:00
|
|
|
conn = pg.connect(database="nk15",user="nk15_user")
|
|
|
|
cur = conn.cursor(cursor_factory = pge.DictCursor)
|
2020-02-07 21:23:37 +00:00
|
|
|
|
2020-02-09 14:40:46 +00:00
|
|
|
# Start with comptes table.
|
|
|
|
cur.execute("SELECT * FROM comptes ORDER BY -idbde LIMIT 5")
|
|
|
|
old_fields = [d[0] for d in cur.description]
|
2020-02-07 21:23:37 +00:00
|
|
|
|
2020-02-09 14:40:46 +00:00
|
|
|
|
|
|
|
print(type(old_fields))
|
|
|
|
for row in cur:
|
|
|
|
for old_field in old_fields:
|
|
|
|
|
|
|
|
print(old_field,row[old_field])
|