AttributeError at /en/set_language/

'NoneType' object has no attribute 'replace'
Request Method: GET
Request URL: http://natruespa.com/en/set_language/?language_code=ru
Django Version: 4.1
Exception Type: AttributeError
Exception Value:
'NoneType' object has no attribute 'replace'
Exception Location: /var/www/natruespa.com/natruespa/natruespa/views.py, line 16, in set_language
Raised during: natruespa.views.set_language
Python Executable: /home/ubuntu/.cache/pypoetry/virtualenvs/natruespa-tvRuPIAQ-py3.10/bin/python3
Python Version: 3.10.6
Python Path:
['/var/www/natruespa.com/natruespa',
 '/usr/lib/python310.zip',
 '/usr/lib/python3.10',
 '/usr/lib/python3.10/lib-dynload',
 '/home/ubuntu/.cache/pypoetry/virtualenvs/natruespa-tvRuPIAQ-py3.10/lib/python3.10/site-packages',
 '/var/www/natruespa.com/natruespa']
Server time: Fri, 29 Mar 2024 05:54:00 +0000

Traceback Switch to copy-and-paste view



Request information

USER

AnonymousUser

GET

Variable Value
language_code
'ru'

POST

No POST data

FILES

No FILES data

No cookie data

META

Variable Value
CONTENT_LENGTH
''
CONTENT_TYPE
'text/plain'
DJANGO_SETTINGS_MODULE
'natruespa.settings'
GATEWAY_INTERFACE
'CGI/1.1'
HOME
'/root'
HTTP_ACCEPT
'*/*'
HTTP_ACCEPT_ENCODING
'gzip, br'
HTTP_CDN_LOOP
'cloudflare'
HTTP_CF_CONNECTING_IP
'54.226.68.181'
HTTP_CF_IPCOUNTRY
'US'
HTTP_CF_RAY
'86bd9a4d583f2d11-IAD'
HTTP_CF_VISITOR
'{"scheme":"https"}'
HTTP_CONNECTION
'keep-alive'
HTTP_HOST
'natruespa.com'
HTTP_USER_AGENT
'claudebot'
HTTP_X_FORWARDED_FOR
'54.226.68.181, 172.71.222.11'
HTTP_X_FORWARDED_PROTO
'https'
INVOCATION_ID
'fbc7801ff07f458f9ca57f708d5198fa'
JOURNAL_STREAM
'8:193044576'
LANG
'C.UTF-8'
LOGNAME
'root'
PATH
'/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin'
PATH_INFO
'/en/set_language/'
QUERY_STRING
'language_code=ru'
REMOTE_ADDR
'127.0.0.1'
REMOTE_HOST
''
REQUEST_METHOD
'GET'
RUN_MAIN
'true'
SCRIPT_NAME
''
SERVER_NAME
'localhost'
SERVER_PORT
'8000'
SERVER_PROTOCOL
'HTTP/1.1'
SERVER_SOFTWARE
'WSGIServer/0.2'
SHELL
'/bin/sh'
SYSTEMD_EXEC_PID
'3896303'
TZ
'UTC'
USER
'root'
wsgi.errors
<colorama.ansitowin32.StreamWrapper object at 0x7f8c792788e0>
wsgi.file_wrapper
<class 'wsgiref.util.FileWrapper'>
wsgi.input
<django.core.handlers.wsgi.LimitedStream object at 0x7f8c743191e0>
wsgi.multiprocess
False
wsgi.multithread
True
wsgi.run_once
False
wsgi.url_scheme
'http'
wsgi.version
(1, 0)

Settings

Using settings module natruespa.settings

Setting Value
ABSOLUTE_URL_OVERRIDES
{}
ADMINS
[]
ALLOWED_HOSTS
['127.0.0.1', 'demo.web-key.pro', 'natruespa.com']
APPEND_SLASH
True
AUTHENTICATION_BACKENDS
['django.contrib.auth.backends.ModelBackend']
AUTH_PASSWORD_VALIDATORS
'********************'
AUTH_USER_MODEL
'auth.User'
BASE_DIR
PosixPath('/var/www/natruespa.com/natruespa')
CACHES
{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}}
CACHE_MIDDLEWARE_ALIAS
'default'
CACHE_MIDDLEWARE_KEY_PREFIX
'********************'
CACHE_MIDDLEWARE_SECONDS
600
CART_SESSION_ID
'cart'
CKEDITOR_5_CONFIGS
{'comment': {'language': {'content': 'ru', 'ui': 'ru'},
             'toolbar': ['heading',
                         '|',
                         'bold',
                         'italic',
                         'link',
                         'bulletedList',
                         'numberedList',
                         'blockQuote']},
 'default': {'toolbar': ['heading',
                         '|',
                         'bold',
                         'italic',
                         'link',
                         'bulletedList',
                         'numberedList',
                         'blockQuote',
                         'imageUpload']},
 'extends': {'blockToolbar': ['paragraph',
                              'heading1',
                              'heading2',
                              'heading3',
                              '|',
                              'bulletedList',
                              'numberedList',
                              '|',
                              'blockQuote'],
             'heading': {'options': [{'class': 'ck-heading_paragraph',
                                      'model': 'paragraph',
                                      'title': 'Paragraph'},
                                     {'class': 'ck-heading_heading1',
                                      'model': 'heading1',
                                      'title': 'Heading 1',
                                      'view': 'h1'},
                                     {'class': 'ck-heading_heading2',
                                      'model': 'heading2',
                                      'title': 'Heading 2',
                                      'view': 'h2'},
                                     {'class': 'ck-heading_heading3',
                                      'model': 'heading3',
                                      'title': 'Heading 3',
                                      'view': 'h3'}]},
             'language': 'ru',
             'list': {'properties': {'reversed': True,
                                     'startIndex': True,
                                     'styles': True}},
             'toolbar': ['heading',
                         'codeBlock',
                         '|',
                         'outdent',
                         'indent',
                         '|',
                         'bold',
                         'italic',
                         'link',
                         'underline',
                         'strikethrough',
                         'subscript',
                         'superscript',
                         'highlight',
                         '|',
                         'bulletedList',
                         'numberedList',
                         'todoList',
                         '|',
                         'blockQuote',
                         '|',
                         'fontSize',
                         'fontFamily',
                         'fontColor',
                         'fontBackgroundColor',
                         'removeFormat',
                         'insertTable',
                         'sourceEditing']}}
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
True
CSRF_FAILURE_VIEW
'django.views.csrf.csrf_failure'
CSRF_HEADER_NAME
'HTTP_X_CSRFTOKEN'
CSRF_TRUSTED_ORIGINS
['https://natruespa.com']
CSRF_USE_SESSIONS
False
DATABASES
{'default': {'ATOMIC_REQUESTS': False,
             'AUTOCOMMIT': True,
             'CONN_HEALTH_CHECKS': False,
             'CONN_MAX_AGE': 0,
             'ENGINE': 'django.db.backends.sqlite3',
             'HOST': '',
             'NAME': PosixPath('/var/www/natruespa.com/natruespa/db.sqlite3'),
             'OPTIONS': {},
             'PASSWORD': '********************',
             'PORT': '',
             'TEST': {'CHARSET': None,
                      'COLLATION': None,
                      'MIGRATE': True,
                      'MIRROR': None,
                      'NAME': None},
             'TIME_ZONE': None,
             'USER': ''}}
DATABASE_ROUTERS
[]
DATA_UPLOAD_MAX_MEMORY_SIZE
2621440
DATA_UPLOAD_MAX_NUMBER_FIELDS
1000
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
DECIMAL_SEPARATOR
'.'
DEFAULT_AUTO_FIELD
'django.db.models.BigAutoField'
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
'webmaster@localhost'
DEFAULT_INDEX_TABLESPACE
''
DEFAULT_TABLESPACE
''
DISALLOWED_USER_AGENTS
[]
EMAIL_BACKEND
'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST
'smtp.yandex.ru'
EMAIL_HOST_PASSWORD
'********************'
EMAIL_HOST_USER
'[email protected]'
EMAIL_PORT
465
EMAIL_SSL_CERTFILE
None
EMAIL_SSL_KEYFILE
'********************'
EMAIL_SUBJECT_PREFIX
'[Django] '
EMAIL_TIMEOUT
None
EMAIL_USE_LOCALTIME
False
EMAIL_USE_SSL
True
EMAIL_USE_TLS
False
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.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'django_ckeditor_5',
 'sass_processor',
 'main',
 'parler',
 'templates',
 'academy',
 'rosetta']
INTERNAL_IPS
[]
LANGUAGES
(('en', 'English'), ('ru', 'Russia'))
LANGUAGES_BIDI
['he', 'ar', 'ar-dz', 'fa', 'ur']
LANGUAGE_CODE
'en'
LANGUAGE_COOKIE_AGE
None
LANGUAGE_COOKIE_DOMAIN
None
LANGUAGE_COOKIE_HTTPONLY
False
LANGUAGE_COOKIE_NAME
'cookie_language_natruespa'
LANGUAGE_COOKIE_PATH
'/'
LANGUAGE_COOKIE_SAMESITE
None
LANGUAGE_COOKIE_SECURE
False
LANGUAGE_SESSION_KEY
'********************'
LOCALE_PATHS
[]
LOGGING
{}
LOGGING_CONFIG
'logging.config.dictConfig'
LOGIN_REDIRECT_URL
'/accounts/profile/'
LOGIN_URL
'/accounts/login/'
LOGOUT_REDIRECT_URL
None
MANAGERS
[]
MEDIA_ROOT
'/var/www/natruespa.com/natruespa/media/'
MEDIA_URL
'/media/'
MESSAGE_STORAGE
'django.contrib.messages.storage.fallback.FallbackStorage'
MESSAGE_TAGS
{10: 'alert-secondary',
 20: 'widget',
 25: 'widget',
 30: 'alert-warning',
 40: 'widget'}
MIDDLEWARE
['django.middleware.security.SecurityMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.middleware.locale.LocaleMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware']
MIGRATION_MODULES
{}
MONTH_DAY_FORMAT
'F j'
NUMBER_GROUPING
0
PARLER_LANGUAGES
{None: ({'code': 'en', 'fallbacks': ['en'], 'hide_untranslated': False},
        {'code': 'ru', 'fallbacks': ['en'], 'hide_untranslated': False}),
 'default': {'code': 'en', 'fallbacks': ['en'], 'hide_untranslated': False}}
PASSWORD_HASHERS
'********************'
PASSWORD_RESET_TIMEOUT
'********************'
PREPEND_WWW
False
ROOT_URLCONF
'natruespa.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
True
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
'natruespa.settings'
SHORT_DATETIME_FORMAT
'm/d/Y P'
SHORT_DATE_FORMAT
'm/d/Y'
SIGNING_BACKEND
'django.core.signing.TimestampSigner'
SILENCED_SYSTEM_CHECKS
[]
STATICFILES_DIRS
[]
STATICFILES_FINDERS
['sass_processor.finders.CssFinder']
STATICFILES_STORAGE
'django.contrib.staticfiles.storage.StaticFilesStorage'
STATIC_ROOT
'/var/www/natruespa.com/natruespa/static'
STATIC_URL
'/static/'
TEMPLATES
[{'APP_DIRS': True,
  'BACKEND': 'django.template.backends.django.DjangoTemplates',
  'DIRS': [PosixPath('/var/www/natruespa.com/natruespa/templates')],
  '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']}}]
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
'UTC'
USE_DEPRECATED_PYTZ
False
USE_I18N
True
USE_L10N
True
USE_THOUSAND_SEPARATOR
False
USE_TZ
True
USE_X_FORWARDED_HOST
False
USE_X_FORWARDED_PORT
False
WSGI_APPLICATION
'natruespa.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.