-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.py
40 lines (32 loc) · 1.37 KB
/
config.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import os
from dotenv import load_dotenv
from datetime import timedelta
basedir = os.path.abspath(os.path.dirname(__file__))
load_dotenv(os.path.join(basedir, '.env'))
class Config:
# Database configuration
DATABASE_URL = os.environ.get('DATABASE_URL')
if DATABASE_URL and DATABASE_URL.startswith('postgres://'):
DATABASE_URL = DATABASE_URL.replace('postgres://', 'postgresql://')
elif not DATABASE_URL:
raise RuntimeError(
"DATABASE_URL not set. "
"Please set the DATABASE_URL environment variable "
"to your PostgreSQL connection string."
)
SQLALCHEMY_DATABASE_URI = DATABASE_URL
SQLALCHEMY_TRACK_MODIFICATIONS = False
# Security
SECRET_KEY = os.environ.get('SECRET_KEY') or 'you-will-never-guess'
# Application settings
ITEMS_PER_PAGE = int(os.environ.get('ITEMS_PER_PAGE', 20))
# Flask configuration
FLASK_ENV = os.environ.get('FLASK_ENV', 'production')
DEBUG = os.environ.get('DEBUG', 'False').lower() == 'true'
# Timezone settings
TIMEZONE = os.environ.get('TIMEZONE', 'America/Chicago')
# Add additional configuration settings
ALLOWED_EXTENSIONS = {'png', 'jpg', 'jpeg', 'gif'}
UPLOAD_FOLDER = 'app/static/uploads'
TINYMCE_API_KEY = os.environ.get('TINYMCE_API_KEY')
UPCITEMDB_API_KEY = os.environ.get('UPCITEMDB_API_KEY')