import sqlite3 import connection import controller import model from bottle import run, request, response, route from controller import not_found if __name__ == '__main__': print('sqlite3.version', model.db.version) model.setup() valid_routes = ['login', 'register'] @route('/', method='POST') def process(path): if path not in valid_routes: return not_found() response.content_type = 'application/json' method_to_call = getattr(controller, path) try: return method_to_call() except sqlite3.IntegrityError: return controller.bad_request('action violates database constraints') run(host='localhost', port=connection.port, debug=True)