"""SQLite Database operations.""" import csv from territories import config from territories.connectors import sqlite from territories.models import territory # noqa def init_database(): """Initialize SQLite database storage.""" sqlite.BaseModel.metadata.create_all(sqlite._db_engine) def data_backfill(): """Fill database with data from csv files in dir.""" with open(config.TERRITORIES_CSV, encoding='utf-8') as csvfile: buffer = csv.reader(csvfile, delimiter=',') with sqlite.session_scope() as db_session: for row in buffer: new_object = territory.Territory(*row) db_session.add(new_object) with open( config.TERRITORY_RELATIONS_CSV, encoding='utf-8') as csvfile: buffer = csv.reader(csvfile, delimiter=',') with sqlite.session_scope() as db_session: for row in buffer: new_object = territory.TerritoryRelationship(*row) db_session.add(new_object)