object of type 'NoneType' has no len()
Request Method: | GET |
---|---|
Request URL: | http://bilgeinsansam.com/category/books |
Django Version: | 3.2 |
Exception Type: | TypeError |
Exception Value: | object of type 'NoneType' has no len() |
Exception Location: | /home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/django/core/paginator.py, line 98, in count |
Python Executable: | /home/ayturan_01/thinktank/new_venw/bin/python |
Python Version: | 3.8.10 |
Python Path: | ['/home/ayturan_01/thinktank', '/home/ayturan_01/thinktank/new_venw/bin', '/usr/lib/python38.zip', '/usr/lib/python3.8', '/usr/lib/python3.8/lib-dynload', '/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages', '/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/odf', '/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/odf', '/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/odf', '/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/odf', '/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/odf', '/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/odf', '/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/odf'] |
Server time: | Thu, 28 Mar 2024 13:41:18 +0000 |
/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/django/core/handlers/exception.py
, line 47, in inner
response = await sync_to_async(response_for_exception, thread_sensitive=False)(request, exc)
return response
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 | TypeError("object of type 'NoneType' has no len()") |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7f4fa3c5e040>> |
request | <WSGIRequest: GET '/category/books'> |
/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/django/core/handlers/base.py
, line 181, in _get_response
if response is None:
wrapped_callback = self.make_view_atomic(callback)
# If it is an asynchronous view, run it in a subthread.
if asyncio.iscoroutinefunction(wrapped_callback):
wrapped_callback = async_to_sync(wrapped_callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)…
except Exception as e:
response = self.process_exception_by_middleware(e, request)
if response is None:
raise
# Complain if the view returned None (a common error).
Variable | Value |
---|---|
callback | <function Category at 0x7f4fa18c48b0> |
callback_args | () |
callback_kwargs | {'slug': 'books'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f4fa19341f0>> |
request | <WSGIRequest: GET '/category/books'> |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f4fa3c5e040> |
wrapped_callback | <function Category at 0x7f4fa18c48b0> |
/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/django/views/generic/base.py
, line 70, in view
self = cls(**initkwargs)
self.setup(request, *args, **kwargs)
if not hasattr(self, 'request'):
raise AttributeError(
"%s instance has no 'request' attribute. Did you override "
"setup() and forget to call super()?" % cls.__name__
)
return self.dispatch(request, *args, **kwargs)…
view.view_class = cls
view.view_initkwargs = initkwargs
# take name and docstring from class
update_wrapper(view, cls, updated=())
Variable | Value |
---|---|
args | () |
cls | <class 'core.views.Category'> |
initkwargs | {} |
kwargs | {'slug': 'books'} |
request | <WSGIRequest: GET '/category/books'> |
self | <core.views.Category object at 0x7f4fa13d78b0> |
/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/django/views/generic/base.py
, line 98, in dispatch
# Try to dispatch to the right method; if a method doesn't exist,
# defer to the error handler. Also defer to the error handler if the
# request method isn't on the approved list.
if request.method.lower() in self.http_method_names:
handler = getattr(self, request.method.lower(), self.http_method_not_allowed)
else:
handler = self.http_method_not_allowed
return handler(request, *args, **kwargs)…
def http_method_not_allowed(self, request, *args, **kwargs):
logger.warning(
'Method Not Allowed (%s): %s', request.method, request.path,
extra={'status_code': 405, 'request': request}
)
Variable | Value |
---|---|
args | () |
handler | <bound method BaseListView.get of <core.views.Category object at 0x7f4fa13d78b0>> |
kwargs | {'slug': 'books'} |
request | <WSGIRequest: GET '/category/books'> |
self | <core.views.Category object at 0x7f4fa13d78b0> |
/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/django/views/generic/list.py
, line 157, in get
is_empty = not self.object_list.exists()
else:
is_empty = not self.object_list
if is_empty:
raise Http404(_('Empty list and “%(class_name)s.allow_empty” is False.') % {
'class_name': self.__class__.__name__,
})
context = self.get_context_data()…
return self.render_to_response(context)
class MultipleObjectTemplateResponseMixin(TemplateResponseMixin):
"""Mixin for responding with a template and list of objects."""
template_name_suffix = '_list'
Variable | Value |
---|---|
allow_empty | True |
args | () |
kwargs | {'slug': 'books'} |
request | <WSGIRequest: GET '/category/books'> |
self | <core.views.Category object at 0x7f4fa13d78b0> |
/home/ayturan_01/thinktank/core/views.py
, line 91, in get_context_data
self.category = CatModel.objects.get(slug=self.kwargs['slug'])
self.articles = Article.objects.filter(category=self.category)
except:
self.articles = None
return self.articles
def get_context_data(self, **kwargs):
context = super().get_context_data()…
self.cat_authors = People.objects.filter(article_authors__in=self.articles).distinct()
self.other_cats = self.category.get_other_categories()
cat_model_type = ContentType.objects.get_for_model(CatModel)
cat_ads = advertisements.objects.filter(content_type__pk=cat_model_type.id, object_id=self.category.pk).last()
p = Paginator(self.articles, self.paginate_by)
context.update({'category': p.page(context['page_obj'].number), 'cat_authors': self.cat_authors,
Variable | Value |
---|---|
__class__ | <class 'core.views.Category'> |
kwargs | {} |
self | <core.views.Category object at 0x7f4fa13d78b0> |
/home/ayturan_01/thinktank/core/views.py
, line 24, in get_context_data
from django.contrib import messages
from django.utils.translation import ugettext_lazy as _
from footer.models import FooterContact, FooterAbout, FooterMenu
class BaseContext(ContextMixin):
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)…
lang_dropdown = dict(settings.LANGUAGES)
header_menu = MenuBaseItems.objects.all()
footer_menus = FooterMenu.objects.all()[:5]
footer_contacts = FooterContact.objects.all()[:5]
footer_about = FooterAbout.objects.first()
context.update({'lang_dropdown': lang_dropdown, 'HeaderMenu': header_menu, 'footer_menus': footer_menus,
Variable | Value |
---|---|
__class__ | <class 'core.views.BaseContext'> |
kwargs | {} |
self | <core.views.Category object at 0x7f4fa13d78b0> |
/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/django/views/generic/list.py
, line 119, in get_context_data
def get_context_data(self, *, object_list=None, **kwargs):
"""Get the context for this view."""
queryset = object_list if object_list is not None else self.object_list
page_size = self.get_paginate_by(queryset)
context_object_name = self.get_context_object_name(queryset)
if page_size:
paginator, page, queryset, is_paginated = self.paginate_queryset(queryset, page_size)…
context = {
'paginator': paginator,
'page_obj': page,
'is_paginated': is_paginated,
'object_list': queryset
}
Variable | Value |
---|---|
__class__ | <class 'django.views.generic.list.MultipleObjectMixin'> |
context_object_name | 'cat_articles' |
kwargs | {} |
object_list | None |
page_size | 12 |
queryset | None |
self | <core.views.Category object at 0x7f4fa13d78b0> |
/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/django/views/generic/list.py
, line 69, in paginate_queryset
page_number = int(page)
except ValueError:
if page == 'last':
page_number = paginator.num_pages
else:
raise Http404(_('Page is not “last”, nor can it be converted to an int.'))
try:
page = paginator.page(page_number)…
return (paginator, page, page.object_list, page.has_other_pages())
except InvalidPage as e:
raise Http404(_('Invalid page (%(page_number)s): %(message)s') % {
'page_number': page_number,
'message': str(e)
})
Variable | Value |
---|---|
page | 1 |
page_kwarg | 'page' |
page_number | 1 |
page_size | 12 |
paginator | <django.core.paginator.Paginator object at 0x7f4fa13d75b0> |
queryset | None |
self | <core.views.Category object at 0x7f4fa13d78b0> |
/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/django/core/paginator.py
, line 76, in page
number = 1
except EmptyPage:
number = self.num_pages
return self.page(number)
def page(self, number):
"""Return a Page object for the given 1-based page number."""
number = self.validate_number(number)…
bottom = (number - 1) * self.per_page
top = bottom + self.per_page
if top + self.orphans >= self.count:
top = self.count
return self._get_page(self.object_list[bottom:top], number, self)
Variable | Value |
---|---|
number | 1 |
self | <django.core.paginator.Paginator object at 0x7f4fa13d75b0> |
/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/django/core/paginator.py
, line 54, in validate_number
if isinstance(number, float) and not number.is_integer():
raise ValueError
number = int(number)
except (TypeError, ValueError):
raise PageNotAnInteger(_('That page number is not an integer'))
if number < 1:
raise EmptyPage(_('That page number is less than 1'))
if number > self.num_pages:…
if number == 1 and self.allow_empty_first_page:
pass
else:
raise EmptyPage(_('That page contains no results'))
return number
Variable | Value |
---|---|
number | 1 |
self | <django.core.paginator.Paginator object at 0x7f4fa13d75b0> |
/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/django/utils/functional.py
, line 48, in __get__
"""
Call the function and put the return value in instance.__dict__ so that
subsequent attribute access on the instance returns the cached value
instead of calling cached_property.__get__().
"""
if instance is None:
return self
res = instance.__dict__[self.name] = self.func(instance)…
return res
class classproperty:
"""
Decorator that converts a method with a single cls argument into a property
Variable | Value |
---|---|
cls | <class 'django.core.paginator.Paginator'> |
instance | <django.core.paginator.Paginator object at 0x7f4fa13d75b0> |
self | <django.utils.functional.cached_property object at 0x7f4fa4d97b20> |
/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/django/core/paginator.py
, line 103, in num_pages
if callable(c) and not inspect.isbuiltin(c) and method_has_no_args(c):
return c()
return len(self.object_list)
@cached_property
def num_pages(self):
"""Return the total number of pages."""
if self.count == 0 and not self.allow_empty_first_page:…
return 0
hits = max(1, self.count - self.orphans)
return ceil(hits / self.per_page)
@property
def page_range(self):
Variable | Value |
---|---|
self | <django.core.paginator.Paginator object at 0x7f4fa13d75b0> |
/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/django/utils/functional.py
, line 48, in __get__
"""
Call the function and put the return value in instance.__dict__ so that
subsequent attribute access on the instance returns the cached value
instead of calling cached_property.__get__().
"""
if instance is None:
return self
res = instance.__dict__[self.name] = self.func(instance)…
return res
class classproperty:
"""
Decorator that converts a method with a single cls argument into a property
Variable | Value |
---|---|
cls | <class 'django.core.paginator.Paginator'> |
instance | <django.core.paginator.Paginator object at 0x7f4fa13d75b0> |
self | <django.utils.functional.cached_property object at 0x7f4fa4d97ac0> |
/home/ayturan_01/thinktank/new_venw/lib/python3.8/site-packages/django/core/paginator.py
, line 98, in count
@cached_property
def count(self):
"""Return the total number of objects, across all pages."""
c = getattr(self.object_list, 'count', None)
if callable(c) and not inspect.isbuiltin(c) and method_has_no_args(c):
return c()
return len(self.object_list)…
@cached_property
def num_pages(self):
"""Return the total number of pages."""
if self.count == 0 and not self.allow_empty_first_page:
return 0
Variable | Value |
---|---|
c | None |
self | <django.core.paginator.Paginator object at 0x7f4fa13d75b0> |
AnonymousUser
No GET data
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
HTTP_ACCEPT | '*/*' |
HTTP_ACCEPT_ENCODING | 'gzip, br' |
HTTP_CDN_LOOP | 'cloudflare' |
HTTP_CF_CONNECTING_IP | '44.204.65.189' |
HTTP_CF_IPCOUNTRY | 'US' |
HTTP_CF_RAY | '86b80975ae718203-FRA' |
HTTP_CF_VISITOR | '{"scheme":"https"}' |
HTTP_CONNECTION | 'close' |
HTTP_HOST | 'bilgeinsansam.com' |
HTTP_USER_AGENT | 'claudebot' |
HTTP_X_FORWARDED_FOR | '44.204.65.189, 172.70.243.124' |
HTTP_X_FORWARDED_PROTO | 'http' |
HTTP_X_REAL_IP | '172.70.243.124' |
PATH_INFO | '/category/books' |
QUERY_STRING | '' |
RAW_URI | '/category/books' |
REMOTE_ADDR | '' |
REQUEST_METHOD | 'GET' |
SCRIPT_NAME | '' |
SERVER_NAME | 'bilgeinsansam.com' |
SERVER_PORT | '80' |
SERVER_PROTOCOL | 'HTTP/1.0' |
SERVER_SOFTWARE | 'gunicorn/20.1.0' |
gunicorn.socket | <socket.socket fd=9, family=AddressFamily.AF_UNIX, type=SocketKind.SOCK_STREAM, proto=0, laddr=/home/ayturan_01/thinktank/thinktank.sock> |
wsgi.errors | <gunicorn.http.wsgi.WSGIErrorsWrapper object at 0x7f4fa112d1c0> |
wsgi.file_wrapper | <class 'gunicorn.http.wsgi.FileWrapper'> |
wsgi.input | <gunicorn.http.body.Body object at 0x7f4fa11e4df0> |
wsgi.input_terminated | True |
wsgi.multiprocess | True |
wsgi.multithread | False |
wsgi.run_once | False |
wsgi.url_scheme | 'http' |
wsgi.version | (1, 0) |
thinktank.settings
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | [] |
ALLOWED_HOSTS | ['139.59.138.178', '*'] |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ['django.contrib.auth.backends.ModelBackend'] |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'auth.User' |
BASE_DIR | PosixPath('/home/ayturan_01/thinktank') |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CKEDITOR_CONFIGS | {'default': {'extraPlugins': 'div,autolink,autoembed,embedsemantic,autogrow,widget,lineutils,clipboard,dialog,dialogui,elementspath', 'skin': 'moono', 'tabSpaces': 4, 'toolbar': 'YouCustomToolbarConfig', 'toolbar_Basic': [['Source', '-', 'Bold', 'Italic']], 'toolbar_YouCustomToolbarConfig': [{'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': 'youcustomtools'}]}} |
CKEDITOR_JQUERY_URL | '//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js' |
CKEDITOR_UPLOAD_PATH | 'uploads/' |
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': 'localhost', 'NAME': 'thinktank', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIGRATE': True, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'postgress'}} |
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_HASHING_ALGORITHM | 'sha256' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DISALLOWED_USER_AGENTS | [] |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | 'localhost' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | '' |
EMAIL_PORT | 25 |
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 | 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 | [] |
IMAGEKIT_CACHEFILE_DIR | 'CACHE/images' |
IMAGEKIT_CACHEFILE_NAMER | 'imagekit.cachefiles.namers.hash' |
IMAGEKIT_CACHE_BACKEND | 'default' |
IMAGEKIT_CACHE_PREFIX | 'imagekit:' |
IMAGEKIT_CACHE_TIMEOUT | 300 |
IMAGEKIT_DEFAULT_CACHEFILE_BACKEND | 'imagekit.cachefiles.backends.Simple' |
IMAGEKIT_DEFAULT_CACHEFILE_STRATEGY | 'imagekit.cachefiles.strategies.JustInTime' |
IMAGEKIT_DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
IMAGEKIT_SPEC_CACHEFILE_NAMER | 'imagekit.cachefiles.namers.source_name_as_path' |
IMAGEKIT_USE_MEMCACHED_SAFE_CACHE_KEY | '********************' |
INSTALLED_APPS | ['jazzmin', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sites', 'django.contrib.flatpages', 'rosetta', 'core', 'slider', 'article', 'pdf', 'video', 'people', 'modeltranslation', 'ckeditor', 'ckeditor_uploader', 'import_export', 'footer'] |
INTERNAL_IPS | [] |
JAZZMIN_SETTINGS | {'copyright': 'Sevdimali İsayev', 'icons': {'article.Article': 'fas fa-newspaper', 'auth': 'fas fa-users-cog', 'auth.Group': 'fas fa-users', 'auth.user': 'fas fa-user', 'author.Author': 'fas fa-user-edit', 'core.Ads': 'fas fa-ad', 'core.Category': 'fas fa-bookmark', 'core.MenuBaseItems': 'fas fa-cube', 'core.MenuSubItems': 'fas fa-cubes', 'core.Subcription': 'fas fa-envelope-open-text', 'core.Trend': 'fas fa-sort-amount-up-alt', 'pdf.PDF': 'fas fa-file-pdf', 'slider.Slider': 'fas fa-exchange-alt', 'video.Video': 'fab fa-youtube'}, 'language_chooser': True, 'navigation_expanded': True, 'show_sidebar': True, 'site_header': 'domain.com', 'site_title': 'domain.com Admin', 'welcome_sign': 'Admin panel'} |
LANGUAGES | (('tr', 'assets/images/flag_tr.png'), ('en', 'assets/images/flag_en.png')) |
LANGUAGES_BIDI | ['he', 'ar', 'ar-dz', 'fa', 'ur'] |
LANGUAGE_CODE | 'tr' |
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 | ('/home/ayturan_01/thinktank/locale',) |
LOGGING | {} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | None |
MANAGERS | [] |
MEDIA_ROOT | '/home/ayturan_01/thinktank/media' |
MEDIA_URL | '/media/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
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 | {} |
MODELTRANSLATION_DEFAULT_LANGUAGE | 'tr' |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PREPEND_WWW | False |
ROOT_URLCONF | 'thinktank.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 | 'thinktank.settings' |
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 |
STATICFILES_DIRS | ('/home/ayturan_01/thinktank/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('/home/ayturan_01/thinktank/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', 'django.template.context_processors.i18n', 'core.context_processors.menu_elements'], 'libraries': {'staticfiles': 'django.templatetags.static'}}}] |
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 |
WSGI_APPLICATION | 'thinktank.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.