Skip to content

Commit 9b9e9f7

Browse files
author
Alexandra Augustine
committed
Fixed my db mistake
1 parent 1ce7799 commit 9b9e9f7

File tree

1 file changed

+27
-17
lines changed

1 file changed

+27
-17
lines changed

project/database.py

Lines changed: 27 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,32 @@
11
from django.conf import settings
22

33

4-
def info():
5-
db_settings = settings.DATABASES['default']
6-
if 'postgres' in db_settings['ENGINE']:
7-
engine = 'PostgreSQL'
8-
url = '{HOST}:{PORT}/{NAME}'.format(**db_settings)
9-
elif 'mysql' in db_settings['ENGINE']:
10-
engine = 'MySQL'
11-
url = '{HOST}:{PORT}/{NAME}'.format(**db_settings)
12-
elif 'sqlite' in db_settings['ENGINE']:
13-
engine = 'SQLite'
14-
url = '{NAME}'.format(**db_settings)
4+
import os
5+
6+
from django.conf import settings
7+
8+
9+
engines = {
10+
'sqlite': 'django.db.backends.sqlite3',
11+
'postgresql': 'django.db.backends.postgresql_psycopg2',
12+
'mysql': 'django.db.backends.mysql',
13+
}
14+
15+
16+
def config():
17+
service_name = os.getenv('DATABASE_SERVICE_NAME', '').upper()
18+
if service_name:
19+
engine = engines.get(os.getenv('DATABASE_ENGINE'), engines['sqlite'])
1520
else:
16-
engine = 'unknown'
17-
url = ''
21+
engine = engines['sqlite']
22+
name = os.getenv('DATABASE_NAME')
23+
if not name and engine == engines['sqlite']:
24+
name = os.path.join(settings.BASE_DIR, 'db.sqlite3')
1825
return {
19-
'engine': engine,
20-
'url': url,
21-
'is_sqlite': engine == 'SQLite',
22-
}
26+
'ENGINE': engine,
27+
'NAME': name,
28+
'USER': os.getenv('DATABASE_USER'),
29+
'PASSWORD': os.getenv('DATABASE_PASSWORD'),
30+
'HOST': os.getenv('{}_SERVICE_HOST'.format(service_name)),
31+
'PORT': os.getenv('{}_SERVICE_PORT'.format(service_name)),
32+
}

0 commit comments

Comments
 (0)