| """ |
| Django settings for stockfund project. |
| |
| Generated by 'django-admin startproject' using Django 4.2. |
| |
| For more information on this file, see |
| https://docs.djangoproject.com/en/4.2/topics/settings/ |
| |
| For the full list of settings and their values, see |
| https://docs.djangoproject.com/en/4.2/ref/settings/ |
| """ |
| import os |
| from pathlib import Path |
|
|
| |
| BASE_DIR = Path(__file__).resolve().parent.parent.parent |
|
|
| |
| |
|
|
| |
| SECRET_KEY = "django-insecure-miq=zs#3kpf79%j$!bhq*++ho5nf5b!9ri(j(v*y%rw=we)1^b" |
|
|
| |
| DEBUG = True |
|
|
| ALLOWED_HOSTS = ["mlnsio-text2sql.hf.space", "*"] |
| DATA_UPLOAD_MAX_NUMBER_FIELDS = 50000 |
|
|
| |
|
|
| INSTALLED_APPS = [ |
| "django.contrib.admin", |
| "django.contrib.auth", |
| "django.contrib.contenttypes", |
| "django.contrib.sessions", |
| "django.contrib.messages", |
| "django.contrib.staticfiles", |
| "core", |
| "django_crontab", |
| "data_pipeline", |
| ] |
|
|
| MIDDLEWARE = [ |
| "core.middleware.ExceptionMiddleware", |
| "django.middleware.security.SecurityMiddleware", |
| "django.contrib.sessions.middleware.SessionMiddleware", |
| "django.middleware.common.CommonMiddleware", |
| "django.middleware.csrf.CsrfViewMiddleware", |
| "django.contrib.auth.middleware.AuthenticationMiddleware", |
| "django.contrib.messages.middleware.MessageMiddleware", |
| "django.middleware.clickjacking.XFrameOptionsMiddleware", |
| ] |
|
|
| ROOT_URLCONF = "stockfund.urls" |
|
|
| TEMPLATES = [ |
| { |
| "BACKEND": "django.template.backends.django.DjangoTemplates", |
| "DIRS": [], |
| "APP_DIRS": True, |
| "OPTIONS": { |
| "context_processors": [ |
| "django.template.context_processors.debug", |
| "django.template.context_processors.request", |
| "django.contrib.auth.context_processors.auth", |
| "django.contrib.messages.context_processors.messages", |
| ], |
| }, |
| }, |
| ] |
|
|
| WSGI_APPLICATION = "stockfund.wsgi.application" |
|
|
|
|
| |
| |
|
|
| DATABASES = { |
| "default": { |
| "ENGINE": "django.db.backends.postgresql_psycopg2", |
| "NAME": os.environ["DB_NAME"], |
| "USER": os.environ["DB_USER"], |
| "PASSWORD": os.environ["DB_PASSWORD"], |
| "HOST": os.environ["DB_HOST"], |
| "PORT": "5432", |
| "TEST": { |
| "NAME": os.environ.get("TEST_DB_NAME", "mf_backend"), |
| }, |
| } |
| } |
|
|
|
|
| |
| |
|
|
| AUTH_PASSWORD_VALIDATORS = [ |
| { |
| "NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator", |
| }, |
| { |
| "NAME": "django.contrib.auth.password_validation.MinimumLengthValidator", |
| }, |
| { |
| "NAME": "django.contrib.auth.password_validation.CommonPasswordValidator", |
| }, |
| { |
| "NAME": "django.contrib.auth.password_validation.NumericPasswordValidator", |
| }, |
| ] |
|
|
|
|
| |
| |
|
|
| LANGUAGE_CODE = "en-us" |
|
|
| TIME_ZONE = "UTC" |
|
|
| USE_I18N = True |
|
|
| USE_TZ = True |
|
|
|
|
| |
| |
|
|
| STATIC_URL = "static/" |
|
|
| |
| |
|
|
| DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField" |
|
|
| CRONJOBS = [ |
| ("0 0 1 * *", "core.cron.store_mutual_funds"), |
| ] |
|
|
| LOGGING = { |
| "version": 1, |
| "disable_existing_loggers": False, |
| "filters": { |
| "require_debug_false": { |
| "()": "django.utils.log.RequireDebugFalse", |
| }, |
| "require_debug_true": { |
| "()": "django.utils.log.RequireDebugTrue", |
| }, |
| }, |
| "formatters": { |
| "verbose": { |
| "format": "{levelname} {asctime} {module}.{funcName} {lineno} - {message}", |
| "style": "{", |
| }, |
| "simple": { |
| "format": "{levelname} {message}", |
| "style": "{", |
| }, |
| "django.server": { |
| "()": "django.utils.log.ServerFormatter", |
| "format": "[{server_time}] {message}", |
| "style": "{", |
| }, |
| }, |
| "handlers": { |
| "console": { |
| "level": "INFO", |
| "filters": ["require_debug_true"], |
| "class": "logging.StreamHandler", |
| }, |
| "django.server": { |
| "level": "INFO", |
| "class": "logging.StreamHandler", |
| "formatter": "django.server", |
| }, |
| "mail_admins": { |
| "level": "ERROR", |
| "filters": ["require_debug_false"], |
| "class": "django.utils.log.AdminEmailHandler", |
| }, |
| "file": { |
| "level": "DEBUG", |
| "class": "logging.FileHandler", |
| "filename": os.path.join(BASE_DIR, "debug.log"), |
| "formatter": "verbose", |
| }, |
| }, |
| "loggers": { |
| "django": { |
| "handlers": ["console", "mail_admins"], |
| "level": "DEBUG", |
| }, |
| "django.server": { |
| "handlers": ["django.server"], |
| "level": "DEBUG", |
| "propagate": False, |
| }, |
| "core": { |
| "handlers": ["file"], |
| "level": "DEBUG", |
| "propagate": False, |
| }, |
| "*": { |
| "handlers": ["file"], |
| "level": "DEBUG", |
| "propagate": False, |
| }, |
| }, |
| } |
|
|
| MORNINGSTAR_KEY = os.environ["MORNINGSTAR_KEY"] |
| MORNINGSTAR_HOST = "morning-star.p.rapidapi.com" |
|
|
| MORNINGSTAR_API_HEADERS = { |
| "X-RapidAPI-Key": MORNINGSTAR_KEY, |
| "X-RapidAPI-Host": MORNINGSTAR_HOST, |
| } |
|
|