Cart matching query does not exist.
Request Method: | GET |
---|---|
Request URL: | http://shop:9999/catalog/gidroklapany_mkpv_32_3/3481/ |
Django Version: | 3.1.7 |
Exception Type: | DoesNotExist |
Exception Value: | Cart matching query does not exist. |
Exception Location: | /usr/local/lib/python3.8/site-packages/django/db/models/query.py, line 429, in get |
Python Executable: | /usr/local/bin/python |
Python Version: | 3.8.1 |
Python Path: | ['/app', '/usr/local/bin', '/usr/local/lib/python38.zip', '/usr/local/lib/python3.8', '/usr/local/lib/python3.8/lib-dynload', '/usr/local/lib/python3.8/site-packages', '/usr/local/lib/python3.8/site-packages/odf', '/usr/local/lib/python3.8/site-packages/odf', '/usr/local/lib/python3.8/site-packages/odf', '/usr/local/lib/python3.8/site-packages/odf', '/usr/local/lib/python3.8/site-packages/odf', '/usr/local/lib/python3.8/site-packages/odf', '/usr/local/lib/python3.8/site-packages/odf'] |
Server time: | Fri, 29 Mar 2024 11:28:22 +0000 |
/usr/local/lib/python3.8/site-packages/asgiref/sync.py
, line 339, in thread_handler
parent_set = True
# Run the function
try:
# If we have an exception, run the function inside the except block
# after raising it so exc_info is correctly populated.
if exc_info[1]:
try:
raise exc_info[1]…
except Exception:
return func(*args, **kwargs)
else:
return func(*args, **kwargs)
finally:
# Only delete the launch_map parent if we set it, otherwise it is
Variable | Value |
---|---|
args | (functools.partial(<function response_for_exception at 0x7f55f3b20c10>, <ASGIRequest: GET '/catalog/gidroklapany_mkpv_32_3/3481/'>, DoesNotExist('Cart matching query does not exist.')),) |
current_thread | <Thread(ThreadPoolExecutor-1_0, started daemon 140007023683328)> |
exc_info | (<class 'cart.models.Cart.DoesNotExist'>, DoesNotExist('Cart matching query does not exist.'), <traceback object at 0x7f55ed35d040>) |
func | <built-in method run of Context object at 0x7f55ecfb4f00> |
kwargs | {} |
loop | <uvloop.Loop running=True closed=False debug=False> |
parent_set | True |
self | <asgiref.sync.SyncToAsync object at 0x7f55ed2148e0> |
source_task | <Task pending name='Task-4668' coro=<RequestResponseCycle.run_asgi() running at /usr/local/lib/python3.8/site-packages/uvicorn/protocols/http/httptools_impl.py:398> wait_for=<Future pending cb=[_chain_future.<locals>._call_check_cancel() at /usr/local/lib/python3.8/asyncio/futures.py:360, <TaskWakeupMethWrapper object at 0x7f55ed214850>()]> cb=[set.discard()]> |
/usr/local/lib/python3.8/site-packages/django/core/handlers/exception.py
, line 38, in inner
no middleware leaks an exception and that the next middleware in the stack
can rely on getting a response instead of an exception.
"""
if asyncio.iscoroutinefunction(get_response):
@wraps(get_response)
async def inner(request):
try:
response = await get_response(request)…
except Exception as exc:
response = await sync_to_async(response_for_exception, thread_sensitive=False)(request, exc)
return response
return inner
else:
@wraps(get_response)
Variable | Value |
---|---|
exc | DoesNotExist('Cart matching query does not exist.') |
get_response | <bound method BaseHandler._get_response_async of <django.core.handlers.asgi.ASGIHandler object at 0x7f55f355ffa0>> |
request | <ASGIRequest: GET '/catalog/gidroklapany_mkpv_32_3/3481/'> |
/usr/local/lib/python3.8/site-packages/django/core/handlers/base.py
, line 233, in _get_response_async
if response is None:
wrapped_callback = self.make_view_atomic(callback)
# If it is a synchronous view, run it in a subthread
if not asyncio.iscoroutinefunction(wrapped_callback):
wrapped_callback = sync_to_async(wrapped_callback, thread_sensitive=True)
try:
response = await wrapped_callback(request, *callback_args, **callback_kwargs)…
except Exception as e:
response = await sync_to_async(
self.process_exception_by_middleware,
thread_sensitive=True,
)(e, request)
if response is None:
Variable | Value |
---|---|
callback | <function show_product at 0x7f55f3d1d0d0> |
callback_args | () |
callback_kwargs | {'categories': 'gidroklapany_mkpv_32_3', 'product': '3481'} |
middleware_method | <asgiref.sync.SyncToAsync object at 0x7f55ee745400> |
request | <ASGIRequest: GET '/catalog/gidroklapany_mkpv_32_3/3481/'> |
response | None |
self | <django.core.handlers.asgi.ASGIHandler object at 0x7f55f355ffa0> |
wrapped_callback | <asgiref.sync.SyncToAsync object at 0x7f55ed2143a0> |
/usr/local/lib/python3.8/site-packages/asgiref/sync.py
, line 304, in __call__
self.get_current_task(),
sys.exc_info(),
func,
*args,
**kwargs
),
)
ret = await asyncio.wait_for(future, timeout=None)…
if contextvars is not None:
_restore_context(context)
return ret
Variable | Value |
---|---|
args | (functools.partial(<function show_product at 0x7f55f3d1d0d0>, <ASGIRequest: GET '/catalog/gidroklapany_mkpv_32_3/3481/'>, categories='gidroklapany_mkpv_32_3', product='3481'),) |
child | functools.partial(<function show_product at 0x7f55f3d1d0d0>, <ASGIRequest: GET '/catalog/gidroklapany_mkpv_32_3/3481/'>, categories='gidroklapany_mkpv_32_3', product='3481') |
context | <Context object at 0x7f55ed083080> |
executor | <concurrent.futures.thread.ThreadPoolExecutor object at 0x7f55f4af1dc0> |
func | <built-in method run of Context object at 0x7f55ed083080> |
future | <Future finished exception=DoesNotExist('Cart matching query does not exist.')> |
kwargs | {} |
loop | <uvloop.Loop running=True closed=False debug=False> |
self | <asgiref.sync.SyncToAsync object at 0x7f55ed2143a0> |
/usr/local/lib/python3.8/asyncio/tasks.py
, line 455, in wait_for
loop = events.get_running_loop()
else:
warnings.warn("The loop argument is deprecated since Python 3.8, "
"and scheduled for removal in Python 3.10.",
DeprecationWarning, stacklevel=2)
if timeout is None:
return await fut…
if timeout <= 0:
fut = ensure_future(fut, loop=loop)
if fut.done():
return fut.result()
Variable | Value |
---|---|
fut | <Future finished exception=DoesNotExist('Cart matching query does not exist.')> |
loop | <uvloop.Loop running=True closed=False debug=False> |
timeout | None |
/usr/local/lib/python3.8/concurrent/futures/thread.py
, line 57, in run
self.kwargs = kwargs
def run(self):
if not self.future.set_running_or_notify_cancel():
return
try:
result = self.fn(*self.args, **self.kwargs)…
except BaseException as exc:
self.future.set_exception(exc)
# Break a reference cycle with the exception 'exc'
self = None
else:
self.future.set_result(result)
Variable | Value |
---|---|
self | None |
/usr/local/lib/python3.8/site-packages/asgiref/sync.py
, line 343, in thread_handler
# after raising it so exc_info is correctly populated.
if exc_info[1]:
try:
raise exc_info[1]
except Exception:
return func(*args, **kwargs)
else:
return func(*args, **kwargs)…
finally:
# Only delete the launch_map parent if we set it, otherwise it is
# from someone else.
if parent_set:
del self.launch_map[current_thread]
Variable | Value |
---|---|
args | (functools.partial(<function show_product at 0x7f55f3d1d0d0>, <ASGIRequest: GET '/catalog/gidroklapany_mkpv_32_3/3481/'>, categories='gidroklapany_mkpv_32_3', product='3481'),) |
current_thread | <Thread(ThreadPoolExecutor-0_0, started daemon 140007044253440)> |
exc_info | (None, None, None) |
func | <built-in method run of Context object at 0x7f55ed083080> |
kwargs | {} |
loop | <uvloop.Loop running=True closed=False debug=False> |
parent_set | True |
self | <asgiref.sync.SyncToAsync object at 0x7f55ed2143a0> |
source_task | <Task pending name='Task-4668' coro=<RequestResponseCycle.run_asgi() running at /usr/local/lib/python3.8/site-packages/uvicorn/protocols/http/httptools_impl.py:398> wait_for=<Future pending cb=[_chain_future.<locals>._call_check_cancel() at /usr/local/lib/python3.8/asyncio/futures.py:360, <TaskWakeupMethWrapper object at 0x7f55ed214850>()]> cb=[set.discard()]> |
/app/main/views.py
, line 323, in show_product
def show_product(request, categories, product):
categories_footer = Categories.objects.filter(
level__lte=1, is_hide=False).order_by('sorting')
categories_all = Categories.objects.filter(
is_hide=False).order_by('sorting')
init = Categories.objects.get(url=categories, is_hide=False)
product = Cart.objects.get(url=product, categories__is_hide=False)…
keywords, description = get_seo(product)
img = ImgCart.objects.filter(cart=product).first()
product.price = int(product.price)
if img:
Variable | Value |
---|---|
categories | 'gidroklapany_mkpv_32_3' |
categories_all | <TreeQuerySet [<Categories: Гидрораспределители>, <Categories: Гидравлика>, <Categories: Гидрораспределители ВЕ43>, <Categories: Пневматика>, <Categories: Гидрораспределители ВЕ 6>, <Categories: Насосы>, <Categories: Смазочное оборудование>, <Categories: Гидрораспределители ВМР6 (1РМР6)>, <Categories: Фильтры>, <Categories: Гидрораспределители ВММ 6>, <Categories: Гидрораспределители ВЕ 10>, <Categories: Гидрораспределители 1РЕ>, <Categories: Гидрораспределители ВММ>, <Categories: Гидрораспределители ПЕ>, <Categories: Гидрораспределители РХ>, <Categories: Гидрораспределители Р102>, <Categories: Гидрораспределители ВХ 10>, <Categories: Гидрораспределители ВММ 10>, <Categories: Гидрораспределители 1РМР10 (ВМР10)>, <Categories: Гидрораспределители ВММ 16>, '...(remaining elements truncated)...']> |
categories_footer | <TreeQuerySet [<Categories: Гидрораспределители>, <Categories: Гидравлика>, <Categories: Пневматика>, <Categories: Насосы>, <Categories: Смазочное оборудование>, <Categories: Фильтры>, <Categories: Гидроклапаны>, <Categories: Гидромоторы>, <Categories: Регуляторы потока>, <Categories: Шестеренчатые насосные агрегаты>, <Categories: Насосы масляные шестеренчатые>, <Categories: Насос-моторы РМНА>, <Categories: Насос-моторы МН>, <Categories: Насосы пластинчатые>, <Categories: Насосы аксиально-поршневые нерегулируемые типа НА>, <Categories: Прочие насосы>, <Categories: Пластинчатые насосы>, <Categories: Радиально-поршневые насосы>, <Categories: Фильтр сетчатый ФС, ФГ>, <Categories: Фильтр магнитный очистительный ФМ>, '...(remaining elements truncated)...']> |
init | <Categories: Гидроклапаны МКПВ 32/3> |
product | '3481' |
request | <ASGIRequest: GET '/catalog/gidroklapany_mkpv_32_3/3481/'> |
/usr/local/lib/python3.8/site-packages/django/db/models/manager.py
, line 85, in manager_method
def check(self, **kwargs):
return []
@classmethod
def _get_queryset_methods(cls, queryset_class):
def create_method(name, method):
def manager_method(self, *args, **kwargs):
return getattr(self.get_queryset(), name)(*args, **kwargs)…
manager_method.__name__ = method.__name__
manager_method.__doc__ = method.__doc__
return manager_method
new_methods = {}
for name, method in inspect.getmembers(queryset_class, predicate=inspect.isfunction):
Variable | Value |
---|---|
args | () |
kwargs | {'categories__is_hide': False, 'url': '3481'} |
name | 'get' |
self | <django.db.models.manager.Manager object at 0x7f55ed473be0> |
/usr/local/lib/python3.8/site-packages/django/db/models/query.py
, line 429, in get
if not clone.query.select_for_update or connections[clone.db].features.supports_select_for_update_with_limit:
limit = MAX_GET_RESULTS
clone.query.set_limits(high=limit)
num = len(clone)
if num == 1:
return clone._result_cache[0]
if not num:
raise self.model.DoesNotExist(…
"%s matching query does not exist." %
self.model._meta.object_name
)
raise self.model.MultipleObjectsReturned(
'get() returned more than one %s -- it returned %s!' % (
self.model._meta.object_name,
Variable | Value |
---|---|
args | () |
clone | <QuerySet []> |
kwargs | {'categories__is_hide': False, 'url': '3481'} |
limit | 21 |
num | 0 |
self | <QuerySet [<Cart: Электрогидравлический толкатель ТЭ-50>, <Cart: Модульный гидроклапан МКПВ 6/3 МР2>, <Cart: Пневмораспределитель В 64-33А-05>, <Cart: Нерегулируемый пластинчатый насос НПл 125/6,3>, <Cart: Двухлинейный питатель МИ-4 (10ДА-10Д-10Д-10Д)>, <Cart: Редукционный клапан соотношения давления для ВЕХ16 - 12>, <Cart: Гидромотор Г 15-22Р (алюминиевый корпус)>, <Cart: Электрогидравлический толкатель ТЭ-80>, <Cart: Нерегулируемый пластинчатый насос НПл 56/16>, <Cart: Модульный гидроклапан МКПВ 6/3 МР3>, <Cart: Пневмораспределитель В 64-34А-05>, <Cart: Нерегулируемый пластинчатый насос БГ 12-24М>, <Cart: Модульный гидроклапан МКПВ 10/3 МР1>, <Cart: Тормоз крановый ТКГ 500>, <Cart: Гидроклапан Г51-35>, <Cart: Гидрораспределитель ВЕ 10.44>, <Cart: Насос-помпа П-100(М) 380В>, <Cart: Электрогидравлический толкатель ТЭ-25>, <Cart: Модульный гидроклапан МКПВ 10/3 МР2>, <Cart: Гидрораспределитель ВММ 6.64, ВММ 6.64Ф с ручным управлением>, '...(remaining elements truncated)...']> |
AnonymousUser
No GET data
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
HTTP_ACCEPT | '*/*' |
HTTP_CONNECTION | 'close' |
HTTP_HOST | 'shop:9999' |
HTTP_USER_AGENT | 'claudebot' |
PATH_INFO | '/catalog/gidroklapany_mkpv_32_3/3481/' |
QUERY_STRING | '' |
REMOTE_ADDR | '172.19.0.3' |
REMOTE_HOST | '172.19.0.3' |
REMOTE_PORT | 50108 |
REQUEST_METHOD | 'GET' |
SCRIPT_NAME | '' |
SERVER_NAME | '172.19.0.2' |
SERVER_PORT | '9999' |
wsgi.multiprocess | True |
wsgi.multithread | True |
genrest.settings
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | [] |
ALLOWED_HOSTS | ['*'] |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ['django.contrib.auth.backends.ModelBackend'] |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'auth.User' |
BASE_DIR | PosixPath('/app') |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CKEDITOR_BASEPATH | '/static/ckeditor/ckeditor/' |
CKEDITOR_CONFIGS | {'default': {'extraPlugins': 'uploadimage,div,autolink,autoembed,embedsemantic,autogrow,widget,lineutils,clipboard,dialog,dialogui,elementspath', 'skin': 'moono', 'tabSpaces': 4, 'toolbar': 'YourCustomToolbarConfig', 'toolbar_Basic': [['Source', '-', 'Bold', 'Italic']], 'toolbar_YourCustomToolbarConfig': [{'items': ['Source', '-', 'Save', 'NewPage', 'Preview', 'Print', '-', 'Templates'], 'name': 'document'}, {'items': ['Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', '-', 'Undo', 'Redo'], 'name': 'clipboard'}, {'items': ['Find', 'Replace', '-', 'SelectAll'], 'name': 'editing'}, {'items': ['Form', 'Checkbox', 'Radio', 'TextField', 'Textarea', 'Select', 'Button', 'ImageButton', 'HiddenField'], 'name': 'forms'}, '/', {'items': ['Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript', '-', 'RemoveFormat'], 'name': 'basicstyles'}, {'items': ['NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', '-', 'Blockquote', 'CreateDiv', '-', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock', '-', 'BidiLtr', 'BidiRtl', 'Language'], 'name': 'paragraph'}, {'items': ['Link', 'Unlink', 'Anchor'], 'name': 'links'}, {'items': ['Image', 'Flash', 'Table', 'HorizontalRule', 'Smiley', 'SpecialChar', 'PageBreak', 'Iframe'], 'name': 'insert'}, '/', {'items': ['Styles', 'Format', 'Font', 'FontSize'], 'name': 'styles'}, {'items': ['TextColor', 'BGColor'], 'name': 'colors'}, {'items': ['Maximize', 'ShowBlocks'], 'name': 'tools'}, {'items': ['About'], 'name': 'about'}, '/', {'items': ['Preview', 'Maximize'], 'name': 'yourcustomtools'}]}} |
CKEDITOR_UPLOAD_PATH | 'uploads_ckeditor/' |
CREATE_WATERMARK | True |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | 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_MAX_AGE': 0, 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'HOST': 'postgres', 'NAME': 'shop', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': '5432', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIGRATE': True, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'shop'}} |
DATABASE_ROUTERS | [] |
DATA_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 10000 |
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_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 | 'tks66ru@gmail.com' |
DEFAULT_HASHING_ALGORITHM | 'sha256' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DEFAULT_TO_EMAIL | 'yarofeevich@bk.ru' |
DISALLOWED_USER_AGENTS | [] |
DOMAIN_SITE_MAIL | 'http://213.189.216.102' |
ELASTICSEARCH_DSL | {'default': {'hosts': '0.0.0.0:9200'}} |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | 'smtp.gmail.com' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | 'tks66ru@gmail.com' |
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 | [] |
FLICKR_PUBLIC | '96e6f397d02c7b33021b5943d4ddbd94' |
FLICKR_SECRET | '********************' |
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.humanize', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sites', 'django.contrib.flatpages', 'rest_framework', 'api', 'main', 'elasticsearch_dsl', 'django_elasticsearch_dsl', 'django_elasticsearch_dsl_drf', 'cart', 'orders', 'ckeditor', 'ckeditor_uploader', 'phone_field', 'question', 'mptt', 'cabinet', 'home', 'import_export'] |
INTERNAL_IPS | [] |
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'), ('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'), ('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', 'fa', 'ur'] |
LANGUAGE_CODE | 'ru-RU' |
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 | {} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | None |
MANAGERS | [] |
MEDIA_ROOT | '/app/media' |
MEDIA_URL | '/media/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['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', 'django.middleware.locale.LocaleMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PREPEND_WWW | False |
REST_FRAMEWORK | {'DEFAULT_PAGINATION_CLASS': 'api.custom_pagination.CustomPagination', 'DEFAULT_PERMISSION_CLASSES': ['rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly'], 'PAGE_SIZE': 16} |
ROOT_URLCONF | 'genrest.urls' |
SECRET_KEY | '********************' |
SECURE_BROWSER_XSS_FILTER | False |
SECURE_CONTENT_TYPE_NOSNIFF | True |
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 | 'genrest.settings' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SHOW_COMMENTS | True |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
SITE_ID | 2 |
STATICFILES_DIRS | ('static',) |
STATICFILES_FINDERS | ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder'] |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | None |
STATIC_URL | '/static/' |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [PosixPath('/app/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_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | True |
USE_X_FORWARDED_HOST | False |
USE_X_FORWARDED_PORT | False |
WATERMARK | 'Алиса коза' |
WSGI_APPLICATION | 'genrest.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.