("No filter named 'richtext'.",)
Request Method: | GET |
---|---|
Request URL: | https://dragonlash.com/report/ |
Django Version: | 4.2.10 |
Exception Type: | TemplateSyntaxError |
Exception Value: | ("No filter named 'richtext'.",) |
Exception Location: | /usr/local/lib/python3.10/dist-packages/django/template/backends/jinja2.py, line 48, in get_template |
Raised during: | wagtail.views.serve |
Python Executable: | /usr/local/bin/uwsgi |
Python Version: | 3.10.12 |
Python Path: | ['.', '', '/usr/lib/python310.zip', '/usr/lib/python3.10', '/usr/lib/python3.10/lib-dynload', '/usr/local/lib/python3.10/dist-packages', '/usr/lib/python3/dist-packages'] |
Server time: | Tue, 19 Mar 2024 13:48:53 -0500 |
In template /app/dragonlash/jinja2/dragonlash/email_form_page.jinja2
, error at line 5
1 | {% extends 'dragonlash/base.jinja2' %} |
---|---|
2 | |
3 | {% block content %} |
4 | <h1>{{ page.title }}</h1> |
5 | {{ page.intro|richtext }} |
6 | <form action="{{page.get_url()}}" method="POST"> |
7 | <input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}"> |
8 | {{ form.as_p() }} |
9 | <input type="submit"> |
10 | </form> |
11 | {% endblock %} |
/usr/local/lib/python3.10/dist-packages/django/template/backends/jinja2.py
, line 42, in get_template
self.env = environment_cls(**options)
def from_string(self, template_code):
return Template(self.env.from_string(template_code), self)
def get_template(self, template_name):
try:
return Template(self.env.get_template(template_name), self)…
except jinja2.TemplateNotFound as exc:
raise TemplateDoesNotExist(exc.name, backend=self) from exc
except jinja2.TemplateSyntaxError as exc:
new = TemplateSyntaxError(exc.args)
new.template_debug = get_exception_info(exc)
raise new from exc
Variable | Value |
---|---|
new | TemplateSyntaxError(("No filter named 'richtext'.",)) |
self | <django.template.backends.jinja2.Jinja2 object at 0x7f44988bded0> |
template_name | 'dragonlash/email_form_page.jinja2' |
/usr/local/lib/python3.10/dist-packages/jinja2/environment.py
, line 1010, in get_template
unchanged.
"""
if isinstance(name, Template):
return name
if parent is not None:
name = self.join_path(name, parent)
return self._load_template(name, globals)…
@internalcode
def select_template(
self,
names: t.Iterable[t.Union[str, "Template"]],
parent: t.Optional[str] = None,
Variable | Value |
---|---|
globals | None |
name | 'dragonlash/email_form_page.jinja2' |
parent | None |
self | <jinja2.environment.Environment object at 0x7f44988be350> |
/usr/local/lib/python3.10/dist-packages/jinja2/environment.py
, line 969, in _load_template
# template.globals is a ChainMap, modifying it will only
# affect the template, not the environment globals.
if globals:
template.globals.update(globals)
return template
template = self.loader.load(self, name, self.make_globals(globals))…
if self.cache is not None:
self.cache[cache_key] = template
return template
@internalcode
Variable | Value |
---|---|
cache_key | (<weakref at 0x7f449885c310; to 'FileSystemLoader' at 0x7f44988bdfc0>, 'dragonlash/email_form_page.jinja2') |
globals | None |
name | 'dragonlash/email_form_page.jinja2' |
self | <jinja2.environment.Environment object at 0x7f44988be350> |
template | None |
/usr/local/lib/python3.10/dist-packages/jinja2/loaders.py
, line 137, in load
if bcc is not None:
bucket = bcc.get_bucket(environment, name, filename, source)
code = bucket.code
# if we don't have code so far (not cached, no longer up to
# date) etc. we compile the template
if code is None:
code = environment.compile(source, name, filename)…
# if the bytecode cache is available and the bucket doesn't
# have a code so far, we give the bucket the new code and put
# it back to the bytecode cache.
if bcc is not None and bucket.code is None:
bucket.code = code
Variable | Value |
---|---|
bcc | None |
code | None |
environment | <jinja2.environment.Environment object at 0x7f44988be350> |
filename | '/app/dragonlash/jinja2/dragonlash/email_form_page.jinja2' |
globals | ChainMap({}, {'crispy': <function crispy at 0x7f44988c3d00>, 'cycler': <class 'jinja2.utils.Cycler'>, 'dict': <class 'dict'>, 'get_by_name': <function get_by_name at 0x7f44988c3c70>, 'get_providers': <function get_providers at 0x7f44988c3be0>, 'get_sidebar_pages': <function get_sidebar_pages at 0x7f44988c2cb0>, 'get_toc': <function get_toc at 0x7f44988c3910>, 'joiner': <class 'jinja2.utils.Joiner'>, 'lipsum': <function generate_lorem_ipsum at 0x7f449ddf4ca0>, 'namespace': <class 'jinja2.utils.Namespace'>, 'provider_login_url': <function provider_login_url at 0x7f44988c3b50>, 'query': <function query at 0x7f44988c39a0>, 'query_children': <function query_children at 0x7f44988c3a30>, 'range': <class 'range'>, 'render_block': <function render_block at 0x7f44988c3880>, 'static': <function static at 0x7f449edb57e0>, 'url': <function reverse at 0x7f449eae3520>}) |
name | 'dragonlash/email_form_page.jinja2' |
self | <jinja2.loaders.FileSystemLoader object at 0x7f44988bdfc0> |
source | ("{% extends 'dragonlash/base.jinja2' %}\n" '\n' '{% block content %}\n' ' <h1>{{ page.title }}</h1>\n' ' {{ page.intro|richtext }}\n' ' <form action="{{page.get_url()}}" method="POST">\n' ' <input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token ' '}}">\n' ' {{ form.as_p() }}\n' ' <input type="submit">\n' ' </form>\n' '{% endblock %}') |
uptodate | <function FileSystemLoader.get_source.<locals>.uptodate at 0x7f44977363b0> |
/usr/local/lib/python3.10/dist-packages/jinja2/environment.py
, line 768, in compile
source = self._generate(source, name, filename, defer_init=defer_init)
if raw:
return source
if filename is None:
filename = "<template>"
return self._compile(source, filename)
except TemplateSyntaxError:
self.handle_exception(source=source_hint)…
def compile_expression(
self, source: str, undefined_to_none: bool = True
) -> "TemplateExpression":
"""A handy helper method that returns a callable that accepts keyword
arguments that appear as variables in the expression. If called it
Variable | Value |
---|---|
defer_init | False |
filename | '/app/dragonlash/jinja2/dragonlash/email_form_page.jinja2' |
name | 'dragonlash/email_form_page.jinja2' |
raw | False |
self | <jinja2.environment.Environment object at 0x7f44988be350> |
source | Template(body=[Extends(template=Const(value='dragonlash/base.jinja2')), Output(nodes=[TemplateData(data='\n\n')]), Block(name='content', body=[Output(nodes=[TemplateData(data='\n <h1>'), Getattr(node=Name(name='page', ctx='load'), attr='title', ctx='load'), TemplateData(data='</h1>\n '), Filter(node=Getattr(node=Name(name='page', ctx='load'), attr='intro', ctx='load'), name='richtext', args=[], kwargs=[], dyn_args=None, dyn_kwargs=None), TemplateData(data='\n <form action="'), Call(node=Getattr(node=Name(name='page', ctx='load'), attr='get_url', ctx='load'), args=[], kwargs=[], dyn_args=None, dyn_kwargs=None), TemplateData(data='" method="POST">\n <input type="hidden" name="csrfmiddlewaretoken" value="'), Name(name='csrf_token', ctx='load'), TemplateData(data='">\n '), Call(node=Getattr(node=Name(name='form', ctx='load'), attr='as_p', ctx='load'), args=[], kwargs=[], dyn_args=None, dyn_kwargs=None), TemplateData(data='\n <input type="submit">\n </form>\n')])], scoped=False, required=False)]) |
source_hint | ("{% extends 'dragonlash/base.jinja2' %}\n" '\n' '{% block content %}\n' ' <h1>{{ page.title }}</h1>\n' ' {{ page.intro|richtext }}\n' ' <form action="{{page.get_url()}}" method="POST">\n' ' <input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token ' '}}">\n' ' {{ form.as_p() }}\n' ' <input type="submit">\n' ' </form>\n' '{% endblock %}') |
/usr/local/lib/python3.10/dist-packages/jinja2/environment.py
, line 936, in handle_exception
def handle_exception(self, source: t.Optional[str] = None) -> "te.NoReturn":
"""Exception handling helper. This is used internally to either raise
rewritten exceptions or return a rendered traceback for the template.
"""
from .debug import rewrite_traceback_stack
raise rewrite_traceback_stack(source=source)…
def join_path(self, template: str, parent: str) -> str:
"""Join a template with the parent. By default all the lookups are
relative to the loader root so this method returns the `template`
parameter unchanged, but if the paths should be relative to the
parent template, this function can be used to calculate the real
Variable | Value |
---|---|
rewrite_traceback_stack | <function rewrite_traceback_stack at 0x7f449778bf40> |
self | <jinja2.environment.Environment object at 0x7f44988be350> |
source | ("{% extends 'dragonlash/base.jinja2' %}\n" '\n' '{% block content %}\n' ' <h1>{{ page.title }}</h1>\n' ' {{ page.intro|richtext }}\n' ' <form action="{{page.get_url()}}" method="POST">\n' ' <input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token ' '}}">\n' ' {{ form.as_p() }}\n' ' <input type="submit">\n' ' </form>\n' '{% endblock %}') |
/app/dragonlash/jinja2/dragonlash/email_form_page.jinja2
, line 5, in template
{% extends 'dragonlash/base.jinja2' %}
{% block content %}
<h1>{{ page.title }}</h1>
{{ page.intro|richtext }}…
<form action="{{page.get_url()}}" method="POST">
<input type="hidden" name="csrfmiddlewaretoken" value="{{ csrf_token }}">
{{ form.as_p() }}
<input type="submit">
</form>
{% endblock %}
/usr/local/lib/python3.10/dist-packages/django/core/handlers/exception.py
, line 55, in inner
return inner
else:
@wraps(get_response)
def inner(request):
try:
response = get_response(request)…
except Exception as exc:
response = response_for_exception(request, exc)
return response
return inner
Variable | Value |
---|---|
exc | TemplateSyntaxError(("No filter named 'richtext'.",)) |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7f4499dac370>> |
request | <WSGIRequest: GET '/report/'> |
/usr/local/lib/python3.10/dist-packages/django/core/handlers/base.py
, line 220, in _get_response
self.check_response(
response,
middleware_method,
name="%s.process_template_response"
% (middleware_method.__self__.__class__.__name__,),
)
try:
response = response.render()…
except Exception as e:
response = self.process_exception_by_middleware(e, request)
if response is None:
raise
return response
Variable | Value |
---|---|
callback | <function serve at 0x7f44986ad900> |
callback_args | ('report/',) |
callback_kwargs | {} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <CsrfViewMiddleware get_response=convert_exception_to_response.<locals>.inner>> |
request | <WSGIRequest: GET '/report/'> |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f4499dac370> |
wrapped_callback | <function serve at 0x7f44986ad900> |
/usr/local/lib/python3.10/dist-packages/django/template/response.py
, line 114, in render
If the content has already been rendered, this is a no-op.
Return the baked response instance.
"""
retval = self
if not self._is_rendered:
self.content = self.rendered_content…
for post_callback in self._post_render_callbacks:
newretval = post_callback(retval)
if newretval is not None:
retval = newretval
return retval
Variable | Value |
---|---|
retval | <TemplateResponse status_code=200, "text/html; charset=utf-8"> |
self | <TemplateResponse status_code=200, "text/html; charset=utf-8"> |
/usr/local/lib/python3.10/dist-packages/django/template/response.py
, line 90, in rendered_content
"""Return the freshly rendered content for the template and context
described by the TemplateResponse.
This *does not* set the final content of the response. To set the
response content, you must either call render(), or set the
content explicitly using the value of this property.
"""
template = self.resolve_template(self.template_name)…
context = self.resolve_context(self.context_data)
return template.render(context, self._request)
def add_post_render_callback(self, callback):
"""Add a new post-rendering callback.
Variable | Value |
---|---|
self | <TemplateResponse status_code=200, "text/html; charset=utf-8"> |
/usr/local/lib/python3.10/dist-packages/django/template/response.py
, line 74, in resolve_template
return obj_dict
def resolve_template(self, template):
"""Accept a template object, path-to-template, or list of paths."""
if isinstance(template, (list, tuple)):
return select_template(template, using=self.using)
elif isinstance(template, str):
return get_template(template, using=self.using)…
else:
return template
def resolve_context(self, context):
return context
Variable | Value |
---|---|
self | <TemplateResponse status_code=200, "text/html; charset=utf-8"> |
template | 'dragonlash/email_form_page.jinja2' |
/usr/local/lib/python3.10/dist-packages/django/template/loader.py
, line 15, in get_template
Raise TemplateDoesNotExist if no such template exists.
"""
chain = []
engines = _engine_list(using)
for engine in engines:
try:
return engine.get_template(template_name)…
except TemplateDoesNotExist as e:
chain.append(e)
raise TemplateDoesNotExist(template_name, chain=chain)
Variable | Value |
---|---|
chain | [] |
engine | <django.template.backends.jinja2.Jinja2 object at 0x7f44988bded0> |
engines | [<django.template.backends.jinja2.Jinja2 object at 0x7f44988bded0>, <django.template.backends.django.DjangoTemplates object at 0x7f44988bdf90>] |
template_name | 'dragonlash/email_form_page.jinja2' |
using | None |
/usr/local/lib/python3.10/dist-packages/django/template/backends/jinja2.py
, line 48, in get_template
try:
return Template(self.env.get_template(template_name), self)
except jinja2.TemplateNotFound as exc:
raise TemplateDoesNotExist(exc.name, backend=self) from exc
except jinja2.TemplateSyntaxError as exc:
new = TemplateSyntaxError(exc.args)
new.template_debug = get_exception_info(exc)
raise new from exc…
@cached_property
def template_context_processors(self):
return [import_string(path) for path in self.context_processors]
Variable | Value |
---|---|
new | TemplateSyntaxError(("No filter named 'richtext'.",)) |
self | <django.template.backends.jinja2.Jinja2 object at 0x7f44988bded0> |
template_name | 'dragonlash/email_form_page.jinja2' |
AnonymousUser
No GET data
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
CONTENT_LENGTH | '' |
CONTENT_TYPE | '' |
DOCUMENT_ROOT | '/etc/nginx/nginx/html' |
HTTPS | 'on' |
HTTP_ACCEPT | '*/*' |
HTTP_HOST | 'dragonlash.com' |
HTTP_REFERER | 'https://dragonlash.com/report' |
HTTP_USER_AGENT | 'claudebot' |
PATH_INFO | '/report/' |
QUERY_STRING | '' |
REMOTE_ADDR | '54.221.159.188' |
REMOTE_PORT | '54974' |
REQUEST_METHOD | 'GET' |
REQUEST_SCHEME | 'https' |
REQUEST_URI | '/report/' |
SCRIPT_NAME | '' |
SERVER_NAME | 'api.pathfinder.dragonlash.com' |
SERVER_PORT | '443' |
SERVER_PROTOCOL | 'HTTP/2.0' |
uwsgi.node | b'a0ef892f3781' |
uwsgi.version | b'2.0.24' |
wsgi.errors | <_io.TextIOWrapper name=2 mode='w' encoding='ANSI_X3.4-1968'> |
wsgi.file_wrapper | <built-in function uwsgi_sendfile> |
wsgi.input | <uwsgi._Input object at 0x7f449775e1f0> |
wsgi.multiprocess | True |
wsgi.multithread | False |
wsgi.run_once | False |
wsgi.url_scheme | 'https' |
wsgi.version | (1, 0) |
settings.debug
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ACCOUNT_AUTHENTICATION_METHOD | 'email' |
ACCOUNT_EMAIL_REQUIRED | True |
ACCOUNT_EMAIL_VERIFICATION | 'mandatory' |
ACCOUNT_TEMPLATE_EXTENSION | 'jinja2' |
ADMINS | [('Daniel Pineo', 'daniel@pineo.net')] |
ALLOWED_HOSTS | ['*'] |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ('django.contrib.auth.backends.ModelBackend', 'allauth.account.auth_backends.AuthenticationBackend') |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'auth.User' |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CORS_ORIGIN_REGEX_WHITELIST | ['^http://[\\w\\.]+localhost:8000$'] |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | False |
CSRF_COOKIE_MASKED | False |
CSRF_COOKIE_NAME | 'csrftoken' |
CSRF_COOKIE_PATH | '/' |
CSRF_COOKIE_SAMESITE | 'Lax' |
CSRF_COOKIE_SECURE | False |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_HEADER_NAME | 'HTTP_X_CSRFTOKEN' |
CSRF_TRUSTED_ORIGINS | [] |
CSRF_USE_SESSIONS | False |
DATABASES | {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_HEALTH_CHECKS': False, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'HOST': '192.168.1.6', 'NAME': 'dragonlash', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': 5432, 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIGRATE': True, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'postgres'}} |
DATABASE_ROUTERS | [] |
DATA_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000 |
DATA_UPLOAD_MAX_NUMBER_FILES | 100 |
DATETIME_FORMAT | 'N j, Y, P' |
DATETIME_INPUT_FORMATS | ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M'] |
DATE_FORMAT | 'N j, Y' |
DATE_INPUT_FORMATS | ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y'] |
DEBUG | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
DEBUG_TOOLBAR_CONFIG | {'SHOW_TEMPLATE_CONTEXT': True} |
DECIMAL_SEPARATOR | '.' |
DEFAULT_AUTO_FIELD | 'django.db.models.AutoField' |
DEFAULT_CHARSET | 'utf-8' |
DEFAULT_EXCEPTION_REPORTER | 'django.views.debug.ExceptionReporter' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
DEFAULT_FROM_EMAIL | 'daniel@pineo.net' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DISALLOWED_USER_AGENTS | [] |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | '209.85.201.109' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | 'daniel@pineo.net' |
EMAIL_PORT | 587 |
EMAIL_SSL_CERTFILE | None |
EMAIL_SSL_KEYFILE | '********************' |
EMAIL_SUBJECT_PREFIX | '[Django] ' |
EMAIL_TIMEOUT | None |
EMAIL_USE_LOCALTIME | False |
EMAIL_USE_SSL | False |
EMAIL_USE_TLS | True |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler'] |
FILE_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
FILE_UPLOAD_PERMISSIONS | 420 |
FILE_UPLOAD_TEMP_DIR | None |
FIRST_DAY_OF_WEEK | 0 |
FIXTURE_DIRS | [] |
FORCE_SCRIPT_NAME | None |
FORMAT_MODULE_PATH | None |
FORM_RENDERER | 'django.forms.renderers.DjangoTemplates' |
IGNORABLE_404_URLS | [] |
INSTALLED_APPS | ('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.admin', 'django.contrib.sitemaps', 'django.contrib.humanize', 'django.contrib.postgres', 'corsheaders', 'dragonlash', 'starfinder', 'pathfinder', 'pathfinder2', 'crispy_forms', 'rest_framework', 'django_filters', 'allauth', 'allauth.account', 'allauth.socialaccount', 'allauth.socialaccount.providers.google', 'debug_toolbar', 'wagtail.contrib.forms', 'wagtail.contrib.redirects', 'wagtail.embeds', 'wagtail.sites', 'wagtail.users', 'wagtail.snippets', 'wagtail.documents', 'wagtail.images', 'wagtail.search', 'wagtail.admin', 'wagtail', 'wagtail.contrib.modeladmin', 'wagtail.contrib.routable_page', 'wagtail.contrib.table_block', 'modelcluster', 'taggit') |
INTERNAL_IPS | ('127.0.0.1', '192.168.1.166') |
LANGUAGES | [('af', 'Afrikaans'), ('ar', 'Arabic'), ('ar-dz', 'Algerian Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('ckb', 'Central Kurdish (Sorani)'), ('cs', 'Czech'), ('cy', 'Welsh'), ('da', 'Danish'), ('de', 'German'), ('dsb', 'Lower Sorbian'), ('el', 'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 'Argentinian Spanish'), ('es-co', 'Colombian Spanish'), ('es-mx', 'Mexican Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve', 'Venezuelan Spanish'), ('et', 'Estonian'), ('eu', 'Basque'), ('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('fy', 'Frisian'), ('ga', 'Irish'), ('gd', 'Scottish Gaelic'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hsb', 'Upper Sorbian'), ('hu', 'Hungarian'), ('hy', 'Armenian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('ig', 'Igbo'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kab', 'Kabyle'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('ky', 'Kyrgyz'), ('lb', 'Luxembourgish'), ('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk', 'Macedonian'), ('ml', 'Malayalam'), ('mn', 'Mongolian'), ('mr', 'Marathi'), ('ms', 'Malay'), ('my', 'Burmese'), ('nb', 'Norwegian Bokmål'), ('ne', 'Nepali'), ('nl', 'Dutch'), ('nn', 'Norwegian Nynorsk'), ('os', 'Ossetic'), ('pa', 'Punjabi'), ('pl', 'Polish'), ('pt', 'Portuguese'), ('pt-br', 'Brazilian Portuguese'), ('ro', 'Romanian'), ('ru', 'Russian'), ('sk', 'Slovak'), ('sl', 'Slovenian'), ('sq', 'Albanian'), ('sr', 'Serbian'), ('sr-latn', 'Serbian Latin'), ('sv', 'Swedish'), ('sw', 'Swahili'), ('ta', 'Tamil'), ('te', 'Telugu'), ('tg', 'Tajik'), ('th', 'Thai'), ('tk', 'Turkmen'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('uz', 'Uzbek'), ('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese')] |
LANGUAGES_BIDI | ['he', 'ar', 'ar-dz', 'ckb', 'fa', 'ur'] |
LANGUAGE_CODE | 'en-us' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_HTTPONLY | False |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LANGUAGE_COOKIE_SAMESITE | None |
LANGUAGE_COOKIE_SECURE | False |
LOCALE_PATHS | [] |
LOGGING | {'disable_existing_loggers': False, 'filters': {'require_debug_false': {'()': 'django.utils.log.RequireDebugFalse'}}, 'handlers': {'console': {'class': 'logging.StreamHandler', 'filters': None, 'level': 'INFO'}, 'mail_admins': {'class': 'django.utils.log.AdminEmailHandler', 'level': 'ERROR'}}, 'loggers': {'django': {'handlers': ['console'], 'level': 'INFO'}, 'django.request': {'filters': ['require_debug_false'], 'handlers': ['mail_admins'], 'level': 'ERROR', 'propagate': False}}, 'root': {'handlers': ['console'], 'level': 'INFO'}, 'version': 1} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | None |
MANAGERS | [('Daniel Pineo', 'daniel@pineo.net')] |
MEDIA_ROOT | '/app/./nginx/media/' |
MEDIA_URL | '/media/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'allauth.account.middleware.AccountMiddleware', 'corsheaders.middleware.CorsMiddleware', 'dragonlash.middleware.ApiSubdomainMiddleware', 'debug_toolbar.middleware.DebugToolbarMiddleware', 'wagtail.contrib.legacy.sitemiddleware.SiteMiddleware', 'wagtail.contrib.redirects.middleware.RedirectMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT | '********************' |
PREPEND_WWW | False |
REST_FRAMEWORK | {'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination', 'DEFAULT_PARSER_CLASSES': ('rest_framework.parsers.JSONParser', 'rest_framework.parsers.FormParser', 'rest_framework.parsers.MultiPartParser'), 'DEFAULT_RENDERER_CLASSES': ('rest_framework.renderers.JSONRenderer', 'rest_framework.renderers.BrowsableAPIRenderer'), 'PAGE_SIZE': 50} |
ROOT_URLCONF | 'dragonlash.urls' |
SECRET_KEY | '********************' |
SECRET_KEY_FALLBACKS | '********************' |
SECURE_CONTENT_TYPE_NOSNIFF | True |
SECURE_CROSS_ORIGIN_OPENER_POLICY | 'same-origin' |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_PRELOAD | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | None |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_REFERRER_POLICY | 'same-origin' |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | False |
SERVER_EMAIL | 'root@localhost' |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_AGE | 1209600 |
SESSION_COOKIE_DOMAIN | None |
SESSION_COOKIE_HTTPONLY | True |
SESSION_COOKIE_NAME | 'sessionid' |
SESSION_COOKIE_PATH | '/' |
SESSION_COOKIE_SAMESITE | 'Lax' |
SESSION_COOKIE_SECURE | False |
SESSION_ENGINE | 'django.contrib.sessions.backends.db' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | False |
SESSION_FILE_PATH | None |
SESSION_SAVE_EVERY_REQUEST | False |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.JSONSerializer' |
SETTINGS_MODULE | 'settings.debug' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
SITE_ID | 1 |
SITE_ROOT | '/app/.' |
SOCIALACCOUNT_PROVIDERS | {'google': {'AUTH_PARAMS': {'access_type': 'online'}, 'SCOPE': ['profile', 'email']}} |
SOCIALACCOUNT_QUERY_EMAIL | True |
SOCIAL_AUTH_GOOGLE_OAUTH2_KEY | '********************' |
SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET | '********************' |
STATICFILES_DIRS | () |
STATICFILES_FINDERS | ('django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder') |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/app/./nginx/static/' |
STATIC_URL | '/static/' |
STORAGES | {'default': {'BACKEND': 'django.core.files.storage.FileSystemStorage'}, 'staticfiles': {'BACKEND': 'django.contrib.staticfiles.storage.StaticFilesStorage'}} |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.jinja2.Jinja2', 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.request'], 'environment': 'dragonlash.jinja2.environment', 'extensions': [<class 'dragonlash.jinja2.FragmentCacheExtension'>]}}, {'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.contrib.auth.context_processors.auth', 'django.template.context_processors.request', 'django.contrib.messages.context_processors.messages']}}] |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
THOUSAND_SEPARATOR | ',' |
TIME_FORMAT | 'P' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'America/Chicago' |
USE_DEPRECATED_PYTZ | False |
USE_I18N | False |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | False |
USE_X_FORWARDED_HOST | False |
USE_X_FORWARDED_PORT | False |
WAGTAILADMIN_BASE_URL | 'https://dragonlash.com' |
WAGTAILSEARCH_BACKENDS | {'default': {'BACKEND': 'wagtail.contrib.postgres_search.backend', 'SEARCH_CONFIG': 'english'}} |
WAGTAIL_SITE_NAME | 'Dragonlash' |
WSGI_APPLICATION | 'dragonlash.wsgi.application' |
X_FRAME_OPTIONS | 'DENY' |
YEAR_MONTH_FORMAT | 'F Y' |
You’re seeing this error because you have DEBUG = True
in your
Django settings file. Change that to False
, and Django will
display a standard page generated by the handler for this status code.