api-sandbox/usr/etc/django/files/local.generated.jinja2
2025-04-22 18:06:11 +03:00

170 lines
4.7 KiB
Django/Jinja

# this file contains settings that are automatically generated
# put custom commands/ imports in a separate file!
LOCAL_SETTINGS = True # avoid recursive imports
BRANCH = '{{ project_branch }}'
from {{ project_base }}.settings import *
import logging
LOCAL_LOGGING_PREFIX = "%s %%(message)s" % BRANCH
logging.basicConfig(format=LOCAL_LOGGING_PREFIX, level=logging.DEBUG)
SITE_ID = 1
TEMPLATES[0]['DIRS'].append(
"{{paths_django_templates}}")
#
# NOTE: a lot of the code in these local settings files are automated and you
# might be inclined to take them out and move them into the main settings.py
# file. That would be a mistake. These automatic files AT THE VERY LEAST have
# one variable, and that is WHICH BRANCH CONFIGURATION FILE ARE WE LOOKING AT.
# Once I set that file, THEN all the rest of the information can be automated.
# So all these automated info needs to be here.
DATABASES = {
'default': {
'ENGINE': '{{server_database_backend}}',
'NAME': '{{server_database_name}}',
'USER': '{{server_database_user}}',
'PASSWORD': '{{server_database_password}}',
'HOST': '{{server_database_host}}',
'PORT': '{{server_database_port}}',
}
}
#
# directory from which we serve static files
#
# NOTE: both STATIC and MEDIA roots are getting their values from the
# initialization files that are set up above. Also, MEDIA_ROOT is being set
# to something called "paths.server.media.dynamic" - the names are different,
# but it means the same thing.
#
# MEDIA_ROOT is the dynamic media information that the web server, user or
# admin # will be adding and taking out. It's why I call it "dynamic"
STATIC_ROOT = '{{paths_server_media_static}}'
MEDIA_ROOT = '{{paths_server_media_dynamic}}'
# directories from which we search for static files to place in STATIC_ROOT
# these static files are located within the project root as opposed to the
# server root location
STATICFILES_DIRS = (
os.path.join("{{paths_project_root}}", "share", "media"),
)
# debug and debug toolbar settings
DEBUG = True
TEMPLATES[0]['OPTIONS']['debug'] = DEBUG
USE_DEBUG_TOOLBAR = DEBUG
# allow template debug outputs on {{ project_branch }} environment
INTERNAL_IPS = ['127.0.0.1', '127.0.0.2', '127.0.0.3', ]
ALLOWED_HOSTS = {{ project_django_allowedhosts }}
# -----------------------------------------
# Debug logging to the console
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'verbose': {
'format': "%(levelname)s %(asctime)s %(module)s %(process)d"
" %(thread)d %(message)s"
},
'simple': {
'format': '%(levelname)s:%(module)s - %(message)s'
},
'code': {
'format': "%(module)s:%(funcName)s:%(lineno)d - %(message)s"
},
'code.file': {
'format': "%(levelname)s %(module)s:%(funcName)s - %(message)s\n"
},
},
'handlers': {
'{{ file_log_handler__name_project }}': {
'class': 'logging.FileHandler',
'filename':
'{{file_log_handler__path_project}}',
'formatter': 'code.file'
},
'{{ file_debug_handler__name_project }}': {
'class': 'logging.FileHandler',
'filename':
'{{file_debug_handler__path_project}}',
'formatter': 'code.file'
},
'{{ file_debug_handler__name_server }}': {
'level': 'DEBUG',
'class': 'logging.FileHandler',
'filename':
'{{file_debug_handler__path_server}}',
'formatter': 'code.file'
},
'console': {
'class': 'logging.StreamHandler',
'formatter': 'simple'
},
'console.code': {
'class': 'logging.StreamHandler',
'formatter': 'code',
},
'null': {
'class': 'logging.NullHandler',
}
},
'root': {
# automatically set to level WARNING
'handlers': ['console.code', '{{ file_log_handler__name_project }}', '{{ file_debug_handler__name_server }}' ],
'propagate': True,
},
'loggers': {
'django.info': {
'handlers':
[
'console',
'{{ file_log_handler__name_project }}'
],
'level': 'INFO',
'propagate': False,
},
'django.debug': {
'handlers':
[
'console.code',
'{{ file_debug_handler__name_project }}',
'{{ file_debug_handler__name_server }}',
],
'level': 'DEBUG',
'propagate': True,
},
}
}