diff --git a/.gitignore b/.gitignore index 77ce346..53dade1 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,10 @@ deployments/docker-compose.yml # Archivos de datos de la DB local postgres_data/ local_postgres_data/ + +# Carpeta de datos (BD SQLite y similares), pero se mantiene la carpeta +data/* +!data/.gitkeep *.pyc # Bloquear todos los .env en cualquier carpeta .env diff --git a/app/api_config/settings.py b/app/api_config/settings.py index c11de02..c92f0fb 100644 --- a/app/api_config/settings.py +++ b/app/api_config/settings.py @@ -93,17 +93,26 @@ TEMPLATES = [ WSGI_APPLICATION = 'api_config.wsgi.application' # 3. DATABASE -# Extraemos con fallback por si el .env falla -DATABASES = { - 'default': { - 'ENGINE': 'django.db.backends.postgresql', - 'NAME': os.getenv('DB_NAME', 'postgres'), - 'USER': os.getenv('DB_USER', 'postgres'), - 'PASSWORD': os.getenv('DB_PASSWORD', ''), - 'HOST': os.getenv('DB_HOST', 'localhost'), - 'PORT': os.getenv('DB_PORT', '5432'), +# En producción (cuando DB_HOST está definido) usa PostgreSQL. +# En local/desarrollo sin configuración, cae a SQLite en data/ +if os.getenv('DB_HOST'): + DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.postgresql', + 'NAME': os.getenv('DB_NAME', 'postgres'), + 'USER': os.getenv('DB_USER', 'postgres'), + 'PASSWORD': os.getenv('DB_PASSWORD', ''), + 'HOST': os.getenv('DB_HOST'), + 'PORT': os.getenv('DB_PORT', '5432'), + } + } +else: + DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': BASE_DIR / 'data' / 'db.sqlite3', + } } -} # Internationalization LANGUAGE_CODE = 'es-es' diff --git a/data/.gitkeep b/data/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/db.sqlite3 b/db.sqlite3 deleted file mode 100644 index e3b2ea1..0000000 Binary files a/db.sqlite3 and /dev/null differ diff --git a/init_db.py b/init_db.py index 3738b4d..545f943 100644 --- a/init_db.py +++ b/init_db.py @@ -29,4 +29,4 @@ with connection.cursor() as cursor: VALUES (1, 'Categoria Test') """) connection.commit() -print('Tablas y datos de prueba creados exitosamente en db.sqlite3') \ No newline at end of file +print('Tablas y datos de prueba creados exitosamente en data/db.sqlite3') \ No newline at end of file