From 1cbbe2d1da76d90014de089867b57eaa80f2f786 Mon Sep 17 00:00:00 2001 From: Frederick Muriuki Muriithi Date: Thu, 14 Apr 2022 12:04:18 +0300 Subject: Provide db port when present Sometimes the system uses a port to connect to the database, rather than a socket, so if the port is present, provide it as part of the connection arguments. --- wqflask/wqflask/database.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/wqflask/wqflask/database.py b/wqflask/wqflask/database.py index afbb7923..f0ce0a77 100644 --- a/wqflask/wqflask/database.py +++ b/wqflask/wqflask/database.py @@ -33,10 +33,12 @@ def parse_db_url(sql_uri: str) -> Tuple: e.g. 'mysql://user:pass@host_name/db_name' """ parsed_db = urlparse(sql_uri) - return (parsed_db.hostname, parsed_db.username, - parsed_db.password, parsed_db.path[1:]) + return ( + parsed_db.hostname, parsed_db.username, parsed_db.password, + parsed_db.path[1:], parsed_db.port) def database_connection(): """Returns a database connection""" - host, user, passwd, db_name = parse_db_url(sql_uri()) - return MySQLdb.connect(db=db_name, user=user, passwd=passwd, host=host) + host, user, passwd, db_name, port = parse_db_url(sql_uri()) + return MySQLdb.connect( + db=db_name, user=user, passwd=passwd, host=host, port=port) -- cgit v1.2.3