Category matching query does not exist.
Request Method: | GET |
---|---|
Request URL: | http://edad.ir/news/category/%25D8%25AE%25D8%25A7%25D9%2586%25D9%2588%25D8%25A7%25D8%25AF%25D9%2587/ |
Django Version: | 2.2 |
Exception Type: | DoesNotExist |
Exception Value: | Category matching query does not exist. |
Exception Location: | /opt/edad-api/eenv/lib/python3.8/site-packages/django/db/models/query.py in get, line 406 |
Python Executable: | /opt/edad-api/eenv/bin/python |
Python Version: | 3.8.10 |
Python Path: | ['/opt/edad-api', '/opt/edad-api', '/opt/edad-api/eenv/bin', '/usr/lib/python38.zip', '/usr/lib/python3.8', '/usr/lib/python3.8/lib-dynload', '/opt/edad-api/eenv/lib/python3.8/site-packages', '/opt/edad-api/eenv/lib/python3.8/site-packages/odf', '/opt/edad-api/eenv/lib/python3.8/site-packages/odf', '/opt/edad-api/eenv/lib/python3.8/site-packages/odf', '/opt/edad-api/eenv/lib/python3.8/site-packages/odf', '/opt/edad-api/eenv/lib/python3.8/site-packages/odf', '/opt/edad-api/eenv/lib/python3.8/site-packages/odf', '/opt/edad-api/eenv/lib/python3.8/site-packages/odf'] |
Server time: | جمعه, 29 مارس 2024 11:08:31 +0430 |
/opt/edad-api/eenv/lib/python3.8/site-packages/django/core/handlers/exception.py
in inner
This decorator is automatically applied to all middleware to ensure that
no middleware leaks an exception and that the next middleware in the stack
can rely on getting a response instead of an exception.
"""
@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 | DoesNotExist('Category matching query does not exist.') |
get_response | <bound method BaseHandler._get_response of <channels.http.AsgiHandler object at 0x7f8453d84730>> |
request | <AsgiRequest: GET '/news/category/%25D8%25AE%25D8%25A7%25D9%2586%25D9%2588%25D8%25A7%25D8%25AF%25D9%2587/'> |
/opt/edad-api/eenv/lib/python3.8/site-packages/django/core/handlers/base.py
in _get_response
break
if response is None:
wrapped_callback = self.make_view_atomic(callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)
except Exception as e:
response = self.process_exception_by_middleware(e, request)…
# Complain if the view returned None (a common error).
if response is None:
if isinstance(callback, types.FunctionType): # FBV
view_name = callback.__name__
else: # CBV
Variable | Value |
---|---|
callback | <function CategoryDetailView at 0x7f8452c20f70> |
callback_args | () |
callback_kwargs | {'category_slug': '%D8%AE%D8%A7%D9%86%D9%88%D8%A7%D8%AF%D9%87'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f8453d916a0>> |
request | <AsgiRequest: GET '/news/category/%25D8%25AE%25D8%25A7%25D9%2586%25D9%2588%25D8%25A7%25D8%25AF%25D9%2587/'> |
resolver | <URLResolver 'edad.urls' (None:None) '^/'> |
resolver_match | ResolverMatch(func=apps.news.views.CategoryDetailView, args=(), kwargs={'category_slug': '%D8%AE%D8%A7%D9%86%D9%88%D8%A7%D8%AF%D9%87'}, url_name=news.category, app_names=[], namespaces=[], route=news/category/(?P<category_slug>.*)/$) |
response | None |
self | <channels.http.AsgiHandler object at 0x7f8453d84730> |
wrapped_callback | <function CategoryDetailView at 0x7f8452c20f70> |
/opt/edad-api/eenv/lib/python3.8/site-packages/django/core/handlers/base.py
in _get_response
response = middleware_method(request, callback, callback_args, callback_kwargs)
if response:
break
if response is None:
wrapped_callback = self.make_view_atomic(callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)…
except Exception as e:
response = self.process_exception_by_middleware(e, request)
# Complain if the view returned None (a common error).
if response is None:
if isinstance(callback, types.FunctionType): # FBV
Variable | Value |
---|---|
callback | <function CategoryDetailView at 0x7f8452c20f70> |
callback_args | () |
callback_kwargs | {'category_slug': '%D8%AE%D8%A7%D9%86%D9%88%D8%A7%D8%AF%D9%87'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f8453d916a0>> |
request | <AsgiRequest: GET '/news/category/%25D8%25AE%25D8%25A7%25D9%2586%25D9%2588%25D8%25A7%25D8%25AF%25D9%2587/'> |
resolver | <URLResolver 'edad.urls' (None:None) '^/'> |
resolver_match | ResolverMatch(func=apps.news.views.CategoryDetailView, args=(), kwargs={'category_slug': '%D8%AE%D8%A7%D9%86%D9%88%D8%A7%D8%AF%D9%87'}, url_name=news.category, app_names=[], namespaces=[], route=news/category/(?P<category_slug>.*)/$) |
response | None |
self | <channels.http.AsgiHandler object at 0x7f8453d84730> |
wrapped_callback | <function CategoryDetailView at 0x7f8452c20f70> |
/opt/edad-api/eenv/lib/python3.8/site-packages/django/views/decorators/csrf.py
in wrapped_view
def csrf_exempt(view_func):
"""Mark a view function as being exempt from the CSRF view protection."""
# view_func.csrf_exempt = True would also work, but decorators are nicer
# if they don't have side effects, so return a new function.
def wrapped_view(*args, **kwargs):
return view_func(*args, **kwargs)…
wrapped_view.csrf_exempt = True
return wraps(view_func)(wrapped_view)
Variable | Value |
---|---|
args | (<AsgiRequest: GET '/news/category/%25D8%25AE%25D8%25A7%25D9%2586%25D9%2588%25D8%25A7%25D8%25AF%25D9%2587/'>,) |
kwargs | {'category_slug': '%D8%AE%D8%A7%D9%86%D9%88%D8%A7%D8%AF%D9%87'} |
view_func | <function CategoryDetailView at 0x7f8452c20ee0> |
/opt/edad-api/eenv/lib/python3.8/site-packages/rest_framework/viewsets.py
in view
self.head = self.get
self.request = request
self.args = args
self.kwargs = kwargs
# And continue as usual
return self.dispatch(request, *args, **kwargs)…
# take name and docstring from class
update_wrapper(view, cls, updated=())
# and possible attributes set by decorators
# like csrf_exempt from dispatch
Variable | Value |
---|---|
action | 'list' |
actions | {'get': 'list'} |
args | () |
cls | <class 'apps.news.views.CategoryDetailView'> |
handler | <bound method NewsView.list of <apps.news.views.CategoryDetailView object at 0x7f84517b2580>> |
initkwargs | {} |
kwargs | {'category_slug': '%D8%AE%D8%A7%D9%86%D9%88%D8%A7%D8%AF%D9%87'} |
method | 'get' |
request | <AsgiRequest: GET '/news/category/%25D8%25AE%25D8%25A7%25D9%2586%25D9%2588%25D8%25A7%25D8%25AF%25D9%2587/'> |
self | <apps.news.views.CategoryDetailView object at 0x7f84517b2580> |
/opt/edad-api/eenv/lib/python3.8/site-packages/rest_framework/views.py
in dispatch
self.http_method_not_allowed)
else:
handler = self.http_method_not_allowed
response = handler(request, *args, **kwargs)
except Exception as exc:
response = self.handle_exception(exc)…
self.response = self.finalize_response(request, response, *args, **kwargs)
return self.response
def options(self, request, *args, **kwargs):
"""
Variable | Value |
---|---|
args | () |
handler | <bound method NewsView.list of <apps.news.views.CategoryDetailView object at 0x7f84517b2580>> |
kwargs | {'category_slug': '%D8%AE%D8%A7%D9%86%D9%88%D8%A7%D8%AF%D9%87'} |
request | <rest_framework.request.Request object at 0x7f8450e55b20> |
self | <apps.news.views.CategoryDetailView object at 0x7f84517b2580> |
/opt/edad-api/eenv/lib/python3.8/site-packages/rest_framework/views.py
in handle_exception
exception_handler = self.get_exception_handler()
context = self.get_exception_handler_context()
response = exception_handler(exc, context)
if response is None:
self.raise_uncaught_exception(exc)…
response.exception = True
return response
def raise_uncaught_exception(self, exc):
if settings.DEBUG:
Variable | Value |
---|---|
context | {'args': (), 'kwargs': {'category_slug': '%D8%AE%D8%A7%D9%86%D9%88%D8%A7%D8%AF%D9%87'}, 'request': <rest_framework.request.Request object at 0x7f8450e55b20>, 'view': <apps.news.views.CategoryDetailView object at 0x7f84517b2580>} |
exc | DoesNotExist('Category matching query does not exist.') |
exception_handler | <function exception_handler at 0x7f8453496a60> |
response | None |
self | <apps.news.views.CategoryDetailView object at 0x7f84517b2580> |
/opt/edad-api/eenv/lib/python3.8/site-packages/rest_framework/views.py
in raise_uncaught_exception
def raise_uncaught_exception(self, exc):
if settings.DEBUG:
request = self.request
renderer_format = getattr(request.accepted_renderer, 'format')
use_plaintext_traceback = renderer_format not in ('html', 'api', 'admin')
request.force_plaintext_errors(use_plaintext_traceback)
raise exc…
# Note: Views are made CSRF exempt from within `as_view` as to prevent
# accidental removal of this exemption in cases where `dispatch` needs to
# be overridden.
def dispatch(self, request, *args, **kwargs):
"""
Variable | Value |
---|---|
exc | DoesNotExist('Category matching query does not exist.') |
renderer_format | 'html' |
request | <rest_framework.request.Request object at 0x7f8450e55b20> |
self | <apps.news.views.CategoryDetailView object at 0x7f84517b2580> |
use_plaintext_traceback | False |
/opt/edad-api/eenv/lib/python3.8/site-packages/rest_framework/views.py
in dispatch
# Get the appropriate handler method
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
response = handler(request, *args, **kwargs)…
except Exception as exc:
response = self.handle_exception(exc)
self.response = self.finalize_response(request, response, *args, **kwargs)
return self.response
Variable | Value |
---|---|
args | () |
handler | <bound method NewsView.list of <apps.news.views.CategoryDetailView object at 0x7f84517b2580>> |
kwargs | {'category_slug': '%D8%AE%D8%A7%D9%86%D9%88%D8%A7%D8%AF%D9%87'} |
request | <rest_framework.request.Request object at 0x7f8450e55b20> |
self | <apps.news.views.CategoryDetailView object at 0x7f84517b2580> |
/opt/edad-api/apps/news/views.py
in list
# filter it with post type news
return super().get_queryset().filter(type=choice.POST_TYPE_NEWS, is_active=True)
def list(self, request, *args, **kwargs):
"""
Returns list of News
"""
return super().list(request, *args, **kwargs)…
def search(self, request, q, *args, **kwargs):
"""
Takes an search_phrase in query param and returns same News
"""
return super().search(request, q, *args, **kwargs)
Variable | Value |
---|---|
__class__ | <class 'apps.news.views.NewsView'> |
args | () |
kwargs | {'category_slug': '%D8%AE%D8%A7%D9%86%D9%88%D8%A7%D8%AF%D9%87'} |
request | <rest_framework.request.Request object at 0x7f8450e55b20> |
self | <apps.news.views.CategoryDetailView object at 0x7f84517b2580> |
/opt/edad-api/eenv/lib/python3.8/site-packages/rest_framework/mixins.py
in list
"""
def list(self, request, *args, **kwargs):
queryset = self.filter_queryset(self.get_queryset())
page = self.paginate_queryset(queryset)
if page is not None:
serializer = self.get_serializer(page, many=True)
return self.get_paginated_response(serializer.data)…
serializer = self.get_serializer(queryset, many=True)
return Response(serializer.data)
class RetrieveModelMixin:
Variable | Value |
---|---|
args | () |
kwargs | {'category_slug': '%D8%AE%D8%A7%D9%86%D9%88%D8%A7%D8%AF%D9%87'} |
page | [] |
queryset | <NonDeletedQuerySet []> |
request | <rest_framework.request.Request object at 0x7f8450e55b20> |
self | <apps.news.views.CategoryDetailView object at 0x7f84517b2580> |
serializer | PostListSerializer([], context={'request': <rest_framework.request.Request object>, 'format': None, 'view': <apps.news.views.CategoryDetailView object>}, many=True): id = IntegerField(label='ID', read_only=True) created_by = UserListSerializer(): id = IntegerField(label='ID', read_only=True) full_name = ReadOnlyField() jalali_created_at = CharField() category = CategoryListSerializer(): title = CharField(label='عنوان', max_length=35) id = IntegerField(label='ID', read_only=True) comments_count = SerializerMethodField() score = IntegerField() removed = DateTimeField(read_only=True) created_at = DateTimeField(label='تاریخ و زمان ایجاد', read_only=True) updated_at = DateTimeField(label='تاریخ و زمان بروزرسانی', read_only=True) is_active = BooleanField(label='فعال است ؟', required=False) view_count = IntegerField(label='تعداد بازدید', max_value=2147483647, min_value=-2147483648, required=False) like_count = IntegerField(label='تعداد لایک', max_value=2147483647, min_value=-2147483648, required=False) dislike_count = IntegerField(label='تعداد دیسلایک', max_value=2147483647, min_value=-2147483648, required=False) slug = CharField(label='اسلاگ', max_length=256, required=False) title = CharField(label='عنوان', max_length=150) text = CharField(label='متن', style={'base_template': 'textarea.html'}) short_description = CharField(label='زیر تیتر', style={'base_template': 'textarea.html'}) thumbnail = ImageField(allow_null=True, label='تصویر شاخص', max_length=100, required=False) content_type = ChoiceField(choices=((101, 'فیلم'), (102, 'تصویر'), (103, 'البوم'), (104, 'متن و عکس'), (105, 'متن و فیلم'), (106, 'متن'), (107, 'صدا')), label='نوع محتوا', required=False, validators=[<django.core.validators.MinValueValidator object>, <django.core.validators.MaxValueValidator object>]) content_file = FileField(allow_null=True, label='فایل محتوا', max_length=100, required=False) type = ChoiceField(choices=((1, 'خبر'), (2, 'آموزش'), (3, 'روال حقوقی و اداری')), validators=[<django.core.validators.MinValueValidator object>, <django.core.validators.MaxValueValidator object>]) soo_titr = CharField(allow_blank=True, allow_null=True, label='سوتیتر', max_length=35, required=False) is_for_customer = BooleanField(label='برای مشتری', required=False) is_for_expert = BooleanField(label='برای کارشناس', required=False) updated_by = PrimaryKeyRelatedField(allow_null=True, label='بروزسانی شده توسط', queryset=User.objects.all(), required=False) |
/opt/edad-api/core/views/base.py
in get_paginated_response
most_viewed = qs.filter(is_active=True).order_by('-view_count')[:10]
latest = qs.filter(is_active=True).order_by('-created_at')[:10]
# serialize objects
most_viewed = self.get_serializer(most_viewed, many=True).data
latest = self.get_serializer(latest, many=True).data
if 'category_slug' in self.kwargs:
category = Category.objects.get(slug=self.kwargs['category_slug'])…
# categories = mother_category.daughter_categories.all()
most_viewed = qs.filter(is_active=True).order_by('-view_count')[:10]
latest = qs.filter(is_active=True).order_by('-created_at')[:10]
# serialize objects
most_viewed = self.get_serializer(most_viewed, many=True).data
latest = self.get_serializer(latest, many=True).data
Variable | Value |
---|---|
categories | None |
category | None |
data | [] |
latest | None |
most_viewed | None |
qs | <NonDeletedQuerySet []> |
self | <apps.news.views.CategoryDetailView object at 0x7f84517b2580> |
/opt/edad-api/eenv/lib/python3.8/site-packages/django/db/models/manager.py
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 | {'slug': '%D8%AE%D8%A7%D9%86%D9%88%D8%A7%D8%AF%D9%87'} |
name | 'get' |
self | <django_permanent.managers.QuerySetManager.<locals>.QuerySetManager object at 0x7f8455fa3700> |
/opt/edad-api/eenv/lib/python3.8/site-packages/django/db/models/query.py
in get
clone = self.filter(*args, **kwargs)
if self.query.can_filter() and not self.query.distinct_fields:
clone = clone.order_by()
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, num)
Variable | Value |
---|---|
args | () |
clone | <NonDeletedQuerySet []> |
kwargs | {'slug': '%D8%AE%D8%A7%D9%86%D9%88%D8%A7%D8%AF%D9%87'} |
num | 0 |
self | <NonDeletedQuerySet [<Category: مالی>, <Category: آموزشی>, <Category: بین الملل>, <Category: بازرگانی>, <Category: خانواده>, <Category: ازدواج>, <Category: طلاق>, <Category: قرارداد>, <Category: متفرقه>, <Category: رسانه>, <Category: اخبار>, <Category: محصول>, <Category: ارث و وصیت>, <Category: مزاحمت>, <Category: اعسار>, <Category: امور ثبتی>, <Category: دعاوی امور حسبی>, <Category: خسارات>, <Category: سرقت>, <Category: ضرب و جرح>, '...(remaining elements truncated)...']> |
AnonymousUser
No GET data
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
HTTP_ACCEPT | '*/*' |
HTTP_CONNECTION | 'upgrade' |
HTTP_HOST | 'edad.ir' |
HTTP_USER_AGENT | 'claudebot' |
HTTP_X_FORWARDED_FOR | '3.234.246.109' |
HTTP_X_FORWARDED_HOST | 'edad.ir' |
HTTP_X_REAL_IP | '3.234.246.109' |
PATH_INFO | '/news/category/%D8%AE%D8%A7%D9%86%D9%88%D8%A7%D8%AF%D9%87/' |
QUERY_STRING | '' |
REMOTE_ADDR | '3.234.246.109' |
REMOTE_HOST | '3.234.246.109' |
REMOTE_PORT | 0 |
REQUEST_METHOD | 'GET' |
SCRIPT_NAME | '' |
SERVER_NAME | '127.0.0.1' |
SERVER_PORT | '8000' |
wsgi.multiprocess | True |
wsgi.multithread | True |
edad.settings
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | [] |
ADMIN_APP_ORDER | ['service_invoice', 'account', 'services', 'service_prices', 'payment', 'comments', 'analytics', 'procedure', 'consultation_questions', 'learns', 'news', 'faq', 'release_manager', 'auth', 'shop', 'web', 'basic_info'] |
ADMIN_SESSION_COOKIE_NAME | 'adminsessionid' |
ALLOWED_HOSTS | ['localhost', '127.0.0.1', '94.130.213.75', 'staging.edad.ir', 'staging.edad.ir', 'edad.pro', 'pro.edad.pro', 'staging.edad.pro', 'edad.ir'] |
APPEND_SLASH | True |
ASGI_APPLICATION | 'edad.routing.application' |
AUTHENTICATION_BACKENDS | ['django.contrib.auth.backends.ModelBackend'] |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'account.User' |
BALE_ROBOT_TOKEN | '********************' |
BASE_DIR | '/opt/edad-api' |
BROKER_POOL_LIMIT | 3 |
CACHES | {'default': {'BACKEND': 'django_redis.cache.RedisCache', 'KEY_PREFIX': '********************', 'LOCATION': 'redis://127.0.0.1:6379/1', 'OPTIONS': {'CLIENT_CLASS': 'django_redis.client.DefaultClient'}}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CELERY_ACCEPT_CONTENT | ['json'] |
CELERY_BROKER_URL | 'redis://127.0.0.1:6379/2' |
CELERY_RESULT_BACKEND | 'redis://127.0.0.1:6379' |
CELERY_TASK_SERIALIZER | 'json' |
CHANNEL_LAYERS | {'default': {'BACKEND': 'channels_redis.core.RedisChannelLayer', 'CONFIG': {'hosts': [('127.0.0.1', 6379)]}}} |
CKEDITOR_CONFIGS | {'default': {'toolbar': 'full'}} |
CKEDITOR_FILENAME_GENERATOR | 'utils.get_filename' |
CKEDITOR_UPLOAD_PATH | 'uploads/' |
CORS_ALLOW_CREDENTIALS | True |
CORS_ALLOW_HEADERS | ['accept', 'accept-encoding', 'authorization', 'content-type', 'dnt', 'origin', 'user-agent', 'x-csrftoken', 'x-requested-with', 'cache-control'] |
CORS_ALLOW_METHODS | ['DELETE', 'GET', 'OPTIONS', 'PATCH', 'POST', 'PUT'] |
CORS_ORIGIN_REGEX_WHITELIST | ['.*'] |
CORS_URLS_REGEX | '.*' |
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 | True |
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.mysql', 'HOST': '127.0.0.1', 'NAME': 'edad_db', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': 3306, 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'root'}} |
DATABASE_ROUTERS | [] |
DATA_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000000 |
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', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M', '%m/%d/%y'] |
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_CONTENT_TYPE | 'text/html' |
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_JET_SIDE_MENU_ITEMS | [{'app_label': 'service_document', 'items': [{'name': 'document'}, {'name': 'documentfieldgroup'}]}, {'app_label': 'web', 'items': [{'name': 'slider'}, {'name': 'contactus'}, {'name': 'setting'}, {'name': 'aboutus'}, {'name': 'social'}]}, {'app_label': 'basic_info', 'items': [{'name': 'referralchoices'}, {'name': 'reasons'}, {'name': 'state'}, {'name': 'bank'}, {'name': 'holiday'}, {'name': 'court'}, {'name': 'courtroom'}, {'name': 'category'}, {'name': 'city'}, {'name': 'sector'}, {'name': 'district'}, {'name': 'claimsubject'}, {'name': 'orderstatus'}, {'name': 'group'}, {'name': 'servicereviewweak'}, {'name': 'servicereviewstrength'}]}, {'app_label': 'auth', 'items': [{'name': 'group'}]}, {'app_label': 'services', 'items': [{'name': 'skill'}, {'name': 'servicetype'}, {'name': 'questiontree'}, {'name': 'servicecategory'}, {'name': 'service'}, {'name': 'smartadviceanswer'}, {'name': 'invoicecoupon'}]}, {'app_label': 'account', 'items': [{'name': 'partnerrequestscope'}, {'name': 'device'}, {'name': 'partneruser'}, {'name': 'staffuser'}, {'name': 'customeruser'}, {'name': 'expertlawyerrevieweruser'}, {'name': 'usermessage'}, {'name': 'expertuser'}, {'name': 'expertlawyeruser'}, {'name': 'creditcode'}]}, {'app_label': 'procedure', 'items': [{'name': 'procedure'}]}, {'app_label': 'service_invoice', 'items': [{'name': 'invoicedocumentproxy'}, {'name': 'invoicesmartadviceproxy'}, {'name': 'invoiceexpertproxy'}, {'name': 'invoicecustomrequestproxy'}, {'name': 'invoice'}, {'name': 'invoiceclam'}, {'name': 'invoicelawyerproxy'}, {'name': 'orderproxy'}, {'name': 'invoicecustomerreview'}, {'name': 'invoicereviewerreview'}, {'name': 'invoiceexpertreview'}]}, {'app_label': 'consultation_questions', 'items': [{'name': 'question'}]}, {'app_label': 'shop', 'items': [{'name': 'cartitem'}, {'name': 'product'}, {'name': 'coupon'}]}, {'app_label': 'service_prices', 'items': [{'name': 'lawyerprice'}, {'name': 'expretprice'}, {'name': 'commission'}]}, {'app_label': 'marketing', 'items': [{'name': 'landing'}, {'name': 'dynamiclandinganalytics'}]}, {'app_label': 'payment', 'items': [{'name': 'transaction'}, {'name': 'gateway'}]}, {'app_label': 'learns', 'items': [{'name': 'learn'}]}, {'app_label': 'news', 'items': [{'name': 'news'}]}, {'app_label': 'bulk', 'items': [{'name': 'bulk'}]}, {'app_label': 'release_manager', 'items': [{'name': 'release'}]}, {'app_label': 'comments', 'items': [{'name': 'newscommentproxy'}, {'name': 'procedurecommentproxy'}, {'name': 'learncommentproxy'}, {'name': 'servicecommentproxy'}, {'name': 'questioncommentproxy'}, {'name': 'productcommentproxy'}, {'name': 'faqcommentproxy'}]}, {'app_label': 'faq', 'items': [{'name': 'faq'}]}, {'app_label': 'expert_interview', 'items': [{'name': 'universityproxy'}, {'name': 'scientificdegreeproxy'}, {'name': 'consultingscoringruleproxy'}, {'name': 'advocacyscoringruleproxy'}, {'name': 'advocacysiteproxy'}, {'name': 'expertuserwaitingforreviewproxy'}]}, {'app_label': 'analytics', 'items': [{'name': 'eventlogtransaction'}, {'name': 'category'}, {'name': 'eventloganalytics'}, {'name': 'landinganalytics'}, {'name': 'servicetypelog'}]}] |
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 |
FCM_APIKEY | '********************' |
FCM_DEVICE_MODEL | 'account.Device' |
FILE_CHARSET | 'utf-8' |
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' |
GAP_ROBOT_TOKEN | '********************' |
HAYSTACK_CONNECTIONS | {'default': {'ENGINE': 'haystack.backends.elasticsearch2_backend.Elasticsearch2SearchEngine', 'INDEX_NAME': 'edad-haystack', 'URL': 'http://127.0.0.1:9200/'}} |
IGAP_API_TOKEN | '********************' |
IGNORABLE_404_URLS | [] |
INSTALLED_APPS | ['jet', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.humanize', 'django.contrib.sitemaps', 'django_extensions', 'ckeditor', 'ckeditor_uploader', 'corsheaders', 'channels', 'taggit', 'taggit_autosuggest', 'apps.tag', 'jalali_date', 'django_redis', 'easy_thumbnails', 'rest_framework', 'rest_framework.authtoken', 'rest_framework_swagger', 'simple_history', 'haystack', 'import_export', 'drf_yasg', 'fcm', 'apps.basic_info', 'apps.account', 'apps.consultation_questions', 'apps.web', 'apps.shop', 'apps.services', 'apps.service_invoice', 'apps.service_document', 'apps.news', 'apps.procedure', 'apps.learns', 'apps.service_prices', 'apps.faq', 'apps.content', 'apps.shortenurl', 'apps.social_share', 'apps.analytics', 'apps.comments', 'apps.invoice_chat', 'apps.payment', 'apps.expert_interview', 'apps.bulk', 'apps.landings', 'apps.release_manager', 'apps.marketing.apps.MarketingConfig', 'apps.google_api.apps.GoogleApiConfig'] |
INTERNAL_IPS | [] |
INVOICE_HIDDEN_OFFERS_UNTIL | 5 |
INVOICE_VALID_UNTIL | '90' |
IS_PRICE_FREE | 'True' |
JALALI_DATE_DEFAULTS | {'Static': {'css': {'all': ['admin/jquery.ui.datepicker.jalali/themes/base/jquery-ui.min.css']}, 'js': ['admin/jquery.ui.datepicker.jalali/scripts/jquery-1.10.2.min.js', 'admin/js/django_jalali.min.js']}, 'Strftime': {'date': '%y/%m/%d', 'datetime': '%y/%m/%d ساعت %H:%M'}} |
JET_SIDE_MENU_ITEMS | [{'app_label': 'service_invoice', 'items': [{'name': 'invoicedocumentproxy'}, {'name': 'invoicesmartadviceproxy'}, {'name': 'invoiceexpertproxy'}, {'name': 'invoicecustomrequestproxy'}, {'name': 'invoice'}, {'name': 'invoiceclam'}, {'name': 'invoicelawyerproxy'}, {'name': 'orderproxy'}, {'name': 'invoicecustomerreview'}, {'name': 'invoicereviewerreview'}, {'name': 'invoiceexpertreview'}]}, {'app_label': 'account', 'items': [{'name': 'partnerrequestscope'}, {'name': 'device'}, {'name': 'partneruser'}, {'name': 'staffuser'}, {'name': 'customeruser'}, {'name': 'expertlawyerrevieweruser'}, {'name': 'usermessage'}, {'name': 'expertuser'}, {'name': 'expertlawyeruser'}, {'name': 'creditcode'}]}, {'app_label': 'services', 'items': [{'name': 'skill'}, {'name': 'servicetype'}, {'name': 'questiontree'}, {'name': 'servicecategory'}, {'name': 'service'}, {'name': 'smartadviceanswer'}, {'name': 'invoicecoupon'}]}, {'app_label': 'service_prices', 'items': [{'name': 'lawyerprice'}, {'name': 'expretprice'}, {'name': 'commission'}]}, {'app_label': 'payment', 'items': [{'name': 'transaction'}, {'name': 'gateway'}]}, {'app_label': 'comments', 'items': [{'name': 'newscommentproxy'}, {'name': 'procedurecommentproxy'}, {'name': 'learncommentproxy'}, {'name': 'servicecommentproxy'}, {'name': 'questioncommentproxy'}, {'name': 'productcommentproxy'}, {'name': 'faqcommentproxy'}]}, {'app_label': 'analytics', 'items': [{'name': 'eventlogtransaction'}, {'name': 'category'}, {'name': 'eventloganalytics'}, {'name': 'landinganalytics'}, {'name': 'servicetypelog'}]}, {'app_label': 'procedure', 'items': [{'name': 'procedure'}]}, {'app_label': 'consultation_questions', 'items': [{'name': 'question'}]}, {'app_label': 'learns', 'items': [{'name': 'learn'}]}, {'app_label': 'news', 'items': [{'name': 'news'}]}, {'app_label': 'faq', 'items': [{'name': 'faq'}]}, {'app_label': 'release_manager', 'items': [{'name': 'release'}]}, {'app_label': 'auth', 'items': [{'name': 'group'}]}, {'app_label': 'shop', 'items': [{'name': 'cartitem'}, {'name': 'product'}, {'name': 'coupon'}]}, {'app_label': 'web', 'items': [{'name': 'slider'}, {'name': 'contactus'}, {'name': 'setting'}, {'name': 'aboutus'}, {'name': 'social'}]}, {'app_label': 'basic_info', 'items': [{'name': 'referralchoices'}, {'name': 'reasons'}, {'name': 'state'}, {'name': 'bank'}, {'name': 'holiday'}, {'name': 'court'}, {'name': 'courtroom'}, {'name': 'category'}, {'name': 'city'}, {'name': 'sector'}, {'name': 'district'}, {'name': 'claimsubject'}, {'name': 'orderstatus'}, {'name': 'group'}, {'name': 'servicereviewweak'}, {'name': 'servicereviewstrength'}]}] |
JWT_AUTH | {'JWT_EXPIRATION_DELTA': datetime.timedelta(days=364), 'JWT_PAYLOAD_GET_USER_ID_HANDLER': 'rest_framework_jwt.utils.jwt_get_user_id_from_payload_handler'} |
KAVE_NEGAR_API_KEY | '********************' |
LANGUAGES | [('af', 'Afrikaans'), ('ar', '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'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kab', 'Kabyle'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('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'), ('th', 'Thai'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese')] |
LANGUAGES_BIDI | ['he', 'ar', 'fa', 'ur'] |
LANGUAGE_CODE | 'FA' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LOCALE_PATHS | [] |
LOGGING | {} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | None |
MANAGERS | [] |
MEDIA_ROOT | '/opt/edad-api/media' |
MEDIA_URL | '/media/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['corsheaders.middleware.CorsMiddleware', 'django.middleware.security.SecurityMiddleware', 'edad.sessions.SeperateSessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'simple_history.middleware.HistoryRequestMiddleware', 'core.middleware.ClientTypeMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PREPEND_WWW | False |
REDIS_HOST | '127.0.0.1' |
REST_FRAMEWORK | {'DEFAULT_AUTHENTICATION_CLASSES': ('rest_framework.authentication.TokenAuthentication', 'rest_framework.authentication.BasicAuthentication', 'rest_framework_simplejwt.authentication.JWTAuthentication'), 'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination', 'DEFAULT_PERMISSION_CLASSES': ('rest_framework.permissions.IsAuthenticated',), 'DEFAULT_SCHEMA_CLASS': 'rest_framework.schemas.coreapi.AutoSchema', 'PAGE_SIZE': 10} |
ROOT_URLCONF | 'edad.urls' |
SECRET_KEY | '********************' |
SECURE_BROWSER_XSS_FILTER | True |
SECURE_CONTENT_TYPE_NOSNIFF | True |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_PRELOAD | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | ('HTTP_X_FORWARDED_PROTO', 'https') |
SECURE_REDIRECT_EXEMPT | [] |
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 | 'edad.settings' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
SIMPLE_JWT | {'ACCESS_TOKEN_LIFETIME': '********************', 'ALGORITHM': 'HS256', 'AUDIENCE': None, 'AUTH_HEADER_TYPES': ('Bearer',), 'AUTH_TOKEN_CLASSES': '********************', 'BLACKLIST_AFTER_ROTATION': True, 'ISSUER': None, 'JTI_CLAIM': 'jti', 'REFRESH_TOKEN_LIFETIME': '********************', 'ROTATE_REFRESH_TOKENS': '********************', 'SIGNING_KEY': '********************', 'SLIDING_TOKEN_LIFETIME': '********************', 'SLIDING_TOKEN_REFRESH_EXP_CLAIM': '********************', 'SLIDING_TOKEN_REFRESH_LIFETIME': '********************', 'TOKEN_TYPE_CLAIM': '********************', 'USER_ID_CLAIM': 'user_id', 'USER_ID_FIELD': 'id', 'VERIFYING_KEY': '********************'} |
SITE_MAP_MODELS | {'consultation_questions.Question': {'changefreq': 'daily', 'priority': '0.8'}, 'faq.FAQ': {'changefreq': 'monthly', 'priority': '0.5'}, 'learns.Learn': {'changefreq': 'daily', 'priority': '0.5'}, 'news.News': {'changefreq': 'weekly', 'priority': '0.5'}, 'procedure.Procedure': {'changefreq': 'weekly', 'priority': '0.5'}, 'shop.Product': {'changefreq': 'weekly', 'priority': '0.5'}} |
SITE_URL | 'http://127.0.0.1' |
SMS_SENDER_LINE | '30007227000595' |
STATICFILES_DIRS | ('/opt/edad-api/staticfiles',) |
STATICFILES_FINDERS | ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder'] |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/opt/edad-api/statics' |
STATIC_URL | '/statics/' |
SWAGGER_SETTINGS | {'DEFAULT_FIELD_INSPECTORS': ['drf_yasg.inspectors.CamelCaseJSONFilter', 'drf_yasg.inspectors.InlineSerializerInspector', 'drf_yasg.inspectors.RelatedFieldInspector', 'drf_yasg.inspectors.ChoiceFieldInspector', 'drf_yasg.inspectors.FileFieldInspector', 'drf_yasg.inspectors.DictFieldInspector', 'drf_yasg.inspectors.SimpleFieldInspector', 'drf_yasg.inspectors.StringDefaultFieldInspector', 'drf_yasg.inspectors.RecursiveFieldInspector', 'drf_yasg.inspectors.ReferencingSerializerInspector', 'drf_yasg.inspectors.JSONFieldInspector'], 'DEFAULT_MODEL_RENDERING': 'example', 'DOC_EXPANSION': 'none', 'JSON_EDITOR': True} |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['templates', 'templates/default'], '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', 'apps.web.context_processors.setting_processor']}}] |
TEMPLATE_DEBUG | True |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
THOUSAND_SEPARATOR | ',' |
THUMBNAIL_ALIASES | {'': {'100x100': {'crop': True, 'size': (100, 100)}, '120x120': {'crop': True, 'size': (120, 120)}, '255x153': {'crop': True, 'size': (255, 153)}, '270x200': {'crop': True, 'size': (270, 200)}, '320x360': {'crop': True, 'size': (320, 360)}, '32x32': {'crop': True, 'size': (32, 32)}, '400x400': {'crop': True, 'size': (400, 400)}, '40x40': {'crop': True, 'size': (40, 40)}, '90x90': {'crop': True, 'size': (90, 90)}}} |
TIME_FORMAT | 'P' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'Asia/Tehran' |
USE_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | True |
USE_X_FORWARDED_HOST | True |
USE_X_FORWARDED_PORT | False |
WSGI_APPLICATION | 'edad.wsgi.application' |
X_FRAME_OPTIONS | 'ALLOW' |
YEAR_MONTH_FORMAT | 'F Y' |
ZARINPAL_MERCHANT_ID | '8c9692b2-2e7b-4f5d-8e4e-5df609191363' |
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.