OperatorSite matching query does not exist.
Request Method: | GET |
---|---|
Request URL: | https://boatrips.activbookings.com/fr/activit%C3%A9s/family-fishing/ |
Django Version: | 1.11.8 |
Exception Type: | DoesNotExist |
Exception Value: | OperatorSite matching query does not exist. |
Exception Location: | /home/abooking/.virtualenvs/activbooking/lib/python3.6/site-packages/django/db/models/query.py in get, line 380 |
Python Executable: | /home/abooking/.virtualenvs/activbooking/bin/python3 |
Python Version: | 3.6.5 |
Python Path: | ['/home/abooking/activbookings_platform/activbookings/src', '/home/abooking/.virtualenvs/activbooking/bin', '/home/abooking/.virtualenvs/activbooking/lib/python36.zip', '/home/abooking/.virtualenvs/activbooking/lib/python3.6', '/home/abooking/.virtualenvs/activbooking/lib/python3.6/lib-dynload', '/usr/lib/python3.6', '/home/abooking/.virtualenvs/activbooking/lib/python3.6/site-packages'] |
Server time: | ven, 29 Mar 2024 11:25:56 +0000 |
/home/abooking/activbookings_platform/activbookings/src/apps/multi_tenant/models.py
in _get_site_by_request
def _get_site_by_request(self, request):
host = request.get_host()
if host.startswith('www.'):
host = host.replace('www.', '')
try:
# First attempt to look up the site by host with or without port.
if host not in SITE_CACHE:
SITE_CACHE[host] = self.get(domain__iexact=host)...
return SITE_CACHE[host]
except OperatorSite.DoesNotExist:
# Fallback to looking up site after stripping port from the host.
domain, port = split_domain_port(host)
if domain not in SITE_CACHE:
SITE_CACHE[domain] = self.get(domain__iexact=domain)
Variable | Value |
---|---|
domain | 'boatrips.activbookings.com' |
host | 'boatrips.activbookings.com' |
port | '' |
request | <WSGIRequest: GET '/fr/activit%C3%A9s/family-fishing/'> |
self | <apps.multi_tenant.models.SiteManager object at 0x7fded33fed68> |
/home/abooking/.virtualenvs/activbooking/lib/python3.6/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 = {}
# Refs http://bugs.python.org/issue1785.
Variable | Value |
---|---|
args | () |
kwargs | {'domain__iexact': 'boatrips.activbookings.com'} |
name | 'get' |
self | <apps.multi_tenant.models.SiteManager object at 0x7fded33fed68> |
/home/abooking/.virtualenvs/activbooking/lib/python3.6/site-packages/django/db/models/query.py
in get
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 | <SoftDeleteQuerySet []> |
kwargs | {'domain__iexact': 'boatrips.activbookings.com'} |
num | 0 |
self | <SoftDeleteQuerySet [<OperatorSite: carvoeirocaves>, <OperatorSite: OceanQuest>, <OperatorSite: Zebra Safari Algarve>, <OperatorSite: Seacret Tours>, <OperatorSite: Natura Algarve>, <OperatorSite: Unique Algarve>, <OperatorSite: dolphin>, <OperatorSite: Example>, <OperatorSite: agent>, <OperatorSite: Seaalgarve>, <OperatorSite: Aveiro Emotions>, <OperatorSite: Royal Nautic>, <OperatorSite: Santa Bernarda>, <OperatorSite: Grupo HPA>, <OperatorSite: Sunset Alegria>, <OperatorSite: Madeirapass>, <OperatorSite: Seabookings>, <OperatorSite: Algarve Cruises>, <OperatorSite: Zawaia Experience>, <OperatorSite: Algarve Nature Fest>, '...(remaining elements truncated)...']> |
/home/abooking/.virtualenvs/activbooking/lib/python3.6/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, assigned=available_attrs(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('OperatorSite matching query does not exist.',) |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7fded27eb128>> |
request | <WSGIRequest: GET '/fr/activit%C3%A9s/family-fishing/'> |
/home/abooking/.virtualenvs/activbooking/lib/python3.6/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 ActivityDetailView at 0x7fded1981950> |
callback_args | () |
callback_kwargs | {'slug': 'family-fishing'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7fded27f0160>> |
request | <WSGIRequest: GET '/fr/activit%C3%A9s/family-fishing/'> |
resolver | <RegexURLResolver 'conf.urls.web' (None:None) ^/> |
resolver_match | ResolverMatch(func=apps.frontoffice.views.ActivityDetailView, args=(), kwargs={'slug': 'family-fishing'}, url_name=detail, app_names=[], namespaces=['activities', 'activity']) |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7fded27eb128> |
wrapped_callback | <function ActivityDetailView at 0x7fded1981950> |
/home/abooking/.virtualenvs/activbooking/lib/python3.6/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 ActivityDetailView at 0x7fded1981950> |
callback_args | () |
callback_kwargs | {'slug': 'family-fishing'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7fded27f0160>> |
request | <WSGIRequest: GET '/fr/activit%C3%A9s/family-fishing/'> |
resolver | <RegexURLResolver 'conf.urls.web' (None:None) ^/> |
resolver_match | ResolverMatch(func=apps.frontoffice.views.ActivityDetailView, args=(), kwargs={'slug': 'family-fishing'}, url_name=detail, app_names=[], namespaces=['activities', 'activity']) |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7fded27eb128> |
wrapped_callback | <function ActivityDetailView at 0x7fded1981950> |
/home/abooking/.virtualenvs/activbooking/lib/python3.6/site-packages/django/views/generic/base.py
in view
def view(request, *args, **kwargs):
self = cls(**initkwargs)
if hasattr(self, 'get') and not hasattr(self, 'head'):
self.head = self.get
self.request = request
self.args = args
self.kwargs = kwargs
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 'apps.frontoffice.views.ActivityDetailView'> |
initkwargs | {} |
kwargs | {'slug': 'family-fishing'} |
request | <WSGIRequest: GET '/fr/activit%C3%A9s/family-fishing/'> |
self | <apps.frontoffice.views.ActivityDetailView object at 0x7fded1337358> |
/home/abooking/.virtualenvs/activbooking/lib/python3.6/site-packages/django/utils/decorators.py
in _wrapper
def _wrapper(self, *args, **kwargs):
@decorate
def bound_func(*args2, **kwargs2):
return func.__get__(self, type(self))(*args2, **kwargs2)
# bound_func has the signature that 'decorator' expects i.e. no
# 'self' argument, but it is a closure over self so it can call
# 'func' correctly.
return bound_func(*args, **kwargs)...
# In case 'decorator' adds attributes to the function it decorates, we
# want to copy those. We don't have access to bound_func in this scope,
# but we can cheat by using it on a dummy function.
@decorate
def dummy(*args, **kwargs):
Variable | Value |
---|---|
args | (<WSGIRequest: GET '/fr/activit%C3%A9s/family-fishing/'>,) |
bound_func | <function method_decorator.<locals>._dec.<locals>._wrapper.<locals>.bound_func at 0x7fded0bfb0d0> |
decorate | <function method_decorator.<locals>._dec.<locals>.decorate at 0x7fded196a8c8> |
func | <function View.dispatch at 0x7fdee9cbe7b8> |
kwargs | {'slug': 'family-fishing'} |
self | <apps.frontoffice.views.ActivityDetailView object at 0x7fded1337358> |
/home/abooking/.virtualenvs/activbooking/lib/python3.6/site-packages/django/views/decorators/csrf.py
in wrapped_view
"""
Marks a view function as being exempt from the CSRF view protection.
"""
# We could just do view_func.csrf_exempt = True, but decorators
# are nicer if they don't have side-effects, so we return a new
# function.
def wrapped_view(*args, **kwargs):
return view_func(*args, **kwargs)...
wrapped_view.csrf_exempt = True
return wraps(view_func, assigned=available_attrs(view_func))(wrapped_view)
Variable | Value |
---|---|
args | (<WSGIRequest: GET '/fr/activit%C3%A9s/family-fishing/'>,) |
kwargs | {'slug': 'family-fishing'} |
view_func | <function method_decorator.<locals>._dec.<locals>._wrapper.<locals>.bound_func at 0x7fdece47ca60> |
/home/abooking/.virtualenvs/activbooking/lib/python3.6/site-packages/django/utils/decorators.py
in bound_func
function = dec(function)
return function
return decorator(function)
def _wrapper(self, *args, **kwargs):
@decorate
def bound_func(*args2, **kwargs2):
return func.__get__(self, type(self))(*args2, **kwargs2)...
# bound_func has the signature that 'decorator' expects i.e. no
# 'self' argument, but it is a closure over self so it can call
# 'func' correctly.
return bound_func(*args, **kwargs)
# In case 'decorator' adds attributes to the function it decorates, we
# want to copy those. We don't have access to bound_func in this scope,
Variable | Value |
---|---|
args2 | (<WSGIRequest: GET '/fr/activit%C3%A9s/family-fishing/'>,) |
func | <function View.dispatch at 0x7fdee9cbe7b8> |
kwargs2 | {'slug': 'family-fishing'} |
self | <apps.frontoffice.views.ActivityDetailView object at 0x7fded1337358> |
/home/abooking/.virtualenvs/activbooking/lib/python3.6/site-packages/django/views/generic/base.py
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 BaseDetailView.get of <apps.frontoffice.views.ActivityDetailView object at 0x7fded1337358>> |
kwargs | {'slug': 'family-fishing'} |
request | <WSGIRequest: GET '/fr/activit%C3%A9s/family-fishing/'> |
self | <apps.frontoffice.views.ActivityDetailView object at 0x7fded1337358> |
/home/abooking/.virtualenvs/activbooking/lib/python3.6/site-packages/django/views/generic/detail.py
in get
class BaseDetailView(SingleObjectMixin, View):
"""
A base view for displaying a single object
"""
def get(self, request, *args, **kwargs):
self.object = self.get_object()...
context = self.get_context_data(object=self.object)
return self.render_to_response(context)
class SingleObjectTemplateResponseMixin(TemplateResponseMixin):
template_name_field = None
Variable | Value |
---|---|
args | () |
kwargs | {'slug': 'family-fishing'} |
request | <WSGIRequest: GET '/fr/activit%C3%A9s/family-fishing/'> |
self | <apps.frontoffice.views.ActivityDetailView object at 0x7fded1337358> |
/home/abooking/.virtualenvs/activbooking/lib/python3.6/site-packages/django/views/generic/detail.py
in get_object
By default this requires `self.queryset` and a `pk` or `slug` argument
in the URLconf, but subclasses can override this to return any object.
"""
# Use a custom queryset if provided; this is required for subclasses
# like DateDetailView
if queryset is None:
queryset = self.get_queryset()...
# Next, try looking up by primary key.
pk = self.kwargs.get(self.pk_url_kwarg)
slug = self.kwargs.get(self.slug_url_kwarg)
if pk is not None:
queryset = queryset.filter(pk=pk)
Variable | Value |
---|---|
queryset | None |
self | <apps.frontoffice.views.ActivityDetailView object at 0x7fded1337358> |
/home/abooking/activbookings_platform/activbookings/src/apps/frontoffice/views.py
in get_queryset
class ActivityDetailView(DetailView):
slug_field = 'name_slug'
queryset = Activity.objects.all()
template_name = 'activity_detail.html'
def get_queryset(self):
qs = super().get_queryset()
site = OperatorSite.objects.get_current(self.request)...
return qs.filter(operator=site.owner, is_active=True)
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
if 'guid' in self.request.GET:
data = json.loads(self.request.session.get(self.request.GET['guid'], '{}'))
Variable | Value |
---|---|
__class__ | <class 'apps.frontoffice.views.ActivityDetailView'> |
qs | <MultilingualGeoQuerySet [<Activity: Le Councher du Soleil>, <Activity: Tangerina II - Aprox. 5H:30m>, <Activity: asda>, <Activity: FAROL ISLAND>, <Activity: Bedroom>, <Activity: Activity Test MasaHotel>, <Activity: Baie Portimão>, <Activity: Stand Up Paddle Expedition - Ria Formosa ERRADO>, <Activity: Full Day: Private Charter Catamaran - Ria Formosa>, <Activity: Birdwatching in Ria Formosa: saltpans of Tavira>, <Activity: Excursion en kayak à Ponta da Piedade>, <Activity: Unique Classic Car & Wine Tasting Experience>, <Activity: Dolphin watching>, <Activity: SECRET GUIMARÃES - JOURNÉE COMPLÈTE>, <Activity: Massagem terapeutica>, <Activity: Birdwatching - Réserve naturelle Castro Marim>, <Activity: Half Day: Private Charter Sunseeker Predator 60>, <Activity: PORTO - ÂME & FLEUVE>, <Activity: Kayak Expedition - Ria Formosa ERRADO>, <Activity: GUIMARÃES MÉDIÉVALE - DEMI-JOURNÉE>, '...(remaining elements truncated)...']> |
self | <apps.frontoffice.views.ActivityDetailView object at 0x7fded1337358> |
/home/abooking/activbookings_platform/activbookings/src/apps/multi_tenant/models.py
in get_current
return getattr(api_user.operator, 'site', None)
def get_current(self, request):
api_user = getattr(request, 'api_user', None)
if api_user:
return self.__get_by_api_user(api_user)
else:
return self._get_site_by_request(request)...
class OperatorSite(AutoCreatedUpdatedModel, SoftDeleteModel, WithUUIDModel):
domain = models.CharField(
_('domain name'),
max_length=100,
Variable | Value |
---|---|
api_user | None |
request | <WSGIRequest: GET '/fr/activit%C3%A9s/family-fishing/'> |
self | <apps.multi_tenant.models.SiteManager object at 0x7fded33fed68> |
/home/abooking/activbookings_platform/activbookings/src/apps/multi_tenant/models.py
in _get_site_by_request
if host not in SITE_CACHE:
SITE_CACHE[host] = self.get(domain__iexact=host)
return SITE_CACHE[host]
except OperatorSite.DoesNotExist:
# Fallback to looking up site after stripping port from the host.
domain, port = split_domain_port(host)
if domain not in SITE_CACHE:
SITE_CACHE[domain] = self.get(domain__iexact=domain)...
return SITE_CACHE[domain]
@staticmethod
def __get_by_api_user(api_user):
return getattr(api_user.operator, 'site', None)
Variable | Value |
---|---|
domain | 'boatrips.activbookings.com' |
host | 'boatrips.activbookings.com' |
port | '' |
request | <WSGIRequest: GET '/fr/activit%C3%A9s/family-fishing/'> |
self | <apps.multi_tenant.models.SiteManager object at 0x7fded33fed68> |
/home/abooking/.virtualenvs/activbooking/lib/python3.6/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 = {}
# Refs http://bugs.python.org/issue1785.
Variable | Value |
---|---|
args | () |
kwargs | {'domain__iexact': 'boatrips.activbookings.com'} |
name | 'get' |
self | <apps.multi_tenant.models.SiteManager object at 0x7fded33fed68> |
/home/abooking/.virtualenvs/activbooking/lib/python3.6/site-packages/django/db/models/query.py
in get
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 | <SoftDeleteQuerySet []> |
kwargs | {'domain__iexact': 'boatrips.activbookings.com'} |
num | 0 |
self | <SoftDeleteQuerySet [<OperatorSite: carvoeirocaves>, <OperatorSite: OceanQuest>, <OperatorSite: Zebra Safari Algarve>, <OperatorSite: Seacret Tours>, <OperatorSite: Natura Algarve>, <OperatorSite: Unique Algarve>, <OperatorSite: dolphin>, <OperatorSite: Example>, <OperatorSite: agent>, <OperatorSite: Seaalgarve>, <OperatorSite: Aveiro Emotions>, <OperatorSite: Royal Nautic>, <OperatorSite: Santa Bernarda>, <OperatorSite: Grupo HPA>, <OperatorSite: Sunset Alegria>, <OperatorSite: Madeirapass>, <OperatorSite: Seabookings>, <OperatorSite: Algarve Cruises>, <OperatorSite: Zawaia Experience>, <OperatorSite: Algarve Nature Fest>, '...(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 | 'boatrips.activbookings.com' |
HTTP_USER_AGENT | 'claudebot' |
HTTP_X_FORWARDED_FOR | '35.175.113.125' |
HTTP_X_FORWARDED_PROTO | 'https' |
HTTP_X_REAL_IP | '35.175.113.125' |
PATH_INFO | '/fr/activités/family-fishing/' |
QUERY_STRING | '' |
RAW_URI | '/fr/activit%C3%A9s/family-fishing/' |
REMOTE_ADDR | '' |
REQUEST_METHOD | 'GET' |
SCRIPT_NAME | '' |
SERVER_NAME | 'boatrips.activbookings.com' |
SERVER_PORT | '443' |
SERVER_PROTOCOL | 'HTTP/1.0' |
SERVER_SOFTWARE | 'gunicorn/19.6.0' |
gunicorn.socket | <socket.socket fd=13, family=AddressFamily.AF_UNIX, type=SocketKind.SOCK_STREAM, proto=0, laddr=/home/abooking/socket/tenant.sock> |
wsgi.errors | <gunicorn.http.wsgi.WSGIErrorsWrapper object at 0x7fdecf3a3710> |
wsgi.file_wrapper | '' |
wsgi.input | <gunicorn.http.body.Body object at 0x7fdecf1f0320> |
wsgi.multiprocess | True |
wsgi.multithread | False |
wsgi.run_once | False |
wsgi.url_scheme | 'https' |
wsgi.version | (1, 0) |
conf.settings.production
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | ('info@activbookings.com',) |
ADMIN_MENU | 'conf.menu.MyAdminMenu' |
ALLOWED_HOSTS | ['.activbookings.com', '*'] |
API_KEY_HEADER | '********************' |
APPEND_SLASH | True |
APPS_DIR | <Path:/home/abooking/activbookings_platform/activbookings/src/apps> |
AUTHENTICATION_BACKENDS | ('apps.multi_tenant.backends.MultiTenantBackend',) |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'multi_tenant.UserProfile' |
BATCH_SIZE | 500 |
BOOKING_QUANTITY_FOR_STATISTICS | 5 |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CKEDITOR_CONFIGS | {'default': {'toolbar': 'common', 'toolbar_common': [{'items': ['Cut', 'Copy', '-', 'Undo', 'Redo'], 'name': 'clipboard'}, {'items': ['Bold', 'Italic', 'Underline', '-', 'RemoveFormat'], 'name': 'basicstyles'}, {'items': ['Styles', 'Format'], 'name': 'styles'}, {'items': ['Link', 'Unlink'], 'name': 'links'}, {'items': ['Maximize'], 'name': 'tools'}, {'items': ['Source'], 'name': 'document'}]}} |
CKEDITOR_CONFIG_DEFAULT | {'toolbar': 'common', 'toolbar_common': [{'items': ['Cut', 'Copy', '-', 'Undo', 'Redo'], 'name': 'clipboard'}, {'items': ['Bold', 'Italic', 'Underline', '-', 'RemoveFormat'], 'name': 'basicstyles'}, {'items': ['Styles', 'Format'], 'name': 'styles'}, {'items': ['Link', 'Unlink'], 'name': 'links'}, {'items': ['Maximize'], 'name': 'tools'}, {'items': ['Source'], 'name': 'document'}]} |
CMS_TAG_MODEL | 'cms.Tag' |
CORS_ALLOW_HEADERS | ('accept', 'accept-encoding', 'authorization', 'content-type', 'dnt', 'origin', 'user-agent', 'x-csrftoken', 'x-requested-with', 'Access-Control-Allow-Origin', 'Authorization', 'X-API-KEY') |
CORS_ORIGIN_ALLOW_ALL | True |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | False |
CSRF_COOKIE_NAME | 'csrftoken' |
CSRF_COOKIE_PATH | '/' |
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.contrib.gis.db.backends.postgis', 'HOST': '127.0.0.1', 'NAME': 'activbookings', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': '5432', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'activbookings'}} |
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', '%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 | 'no-reply@activbookings.com' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_MYPAGE_TEMPLATE | '/home/abooking/activbookings_platform/activbookings/src/templates/default_template.html' |
DEFAULT_PAGINATION | 10 |
DEFAULT_TABLESPACE | '' |
DISALLOWED_USER_AGENTS | [] |
DJANGO_APPS | ('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sites', 'django.contrib.sitemaps', 'django.contrib.humanize', 'corsheaders', 'django.contrib.admin', 'django.contrib.gis') |
DOMAIN | '.activbookings.com' |
{'from_email': 'no-reply@activbookings.com', 'recipients': []} |
|
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | 'mail.activbookings.com' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | 'no-reply@activbookings.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_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 | None |
FILE_UPLOAD_TEMP_DIR | None |
FIRST_DAY_OF_WEEK | 0 |
FIRST_PARTY_APPS | ('modeltranslation', 'photologue', 'apps.django_admin_botox') |
FIXTURE_DIRS | [] |
FORCE_SCRIPT_NAME | None |
FORMAT_MODULE_PATH | None |
FORM_RENDERER | 'django.forms.renderers.DjangoTemplates' |
GOOGLE_MAPS_API_KEY | '********************' |
IGNORABLE_404_URLS | [] |
INSTALLED_APPS | ('modeltranslation', 'photologue', 'apps.django_admin_botox', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sites', 'django.contrib.sitemaps', 'django.contrib.humanize', 'corsheaders', 'django.contrib.admin', 'django.contrib.gis', 'taggit', 'nested_admin', 'mapwidgets', 'multiselectfield', 'wkhtmltopdf', 'ckeditor', 'django_countries', 'rest_framework', 'drf_yasg', 'apps.multi_tenant', 'apps.redirects', 'apps.dengun_cms.core', 'apps.dengun_cms.contrib.treeadmin', 'apps.dengun_cms.mypages', 'apps.dengun_cms.media', 'core', 'apps.themes', 'apps.activities', 'apps.schedule', 'apps.dashboard', 'apps.booking', 'apps.frontoffice', 'apps.payments', 'apps.inventory', 'apps.reports', 'apps.api.v1.api_user', 'apps.api.v1.products', 'raven.contrib.django.raven_compat') |
INTERNAL_IPS | [] |
INVOICE_EXPRESS_API_KEY | '********************' |
INVOICE_EXPRESS_API_NAME | '********************' |
LANGUAGES | (('en', 'English'), ('pt', 'Portuguese'), ('es', 'Spanish'), ('de', 'German'), ('fr', 'French')) |
LANGUAGES_BIDI | ['he', 'ar', 'fa', 'ur'] |
LANGUAGE_CODE | 'en' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LOCALE_PATHS | [] |
LOCAL_APPS | ('apps.multi_tenant', 'apps.redirects', 'apps.dengun_cms.core', 'apps.dengun_cms.contrib.treeadmin', 'apps.dengun_cms.mypages', 'apps.dengun_cms.media', 'core', 'apps.themes', 'apps.activities', 'apps.schedule', 'apps.dashboard', 'apps.booking', 'apps.frontoffice', 'apps.payments', 'apps.inventory', 'apps.reports', 'apps.api.v1.api_user', 'apps.api.v1.products') |
LOGGING | {'disable_existing_loggers': False, 'formatters': {'simple': {'format': '%(levelname)s %(message)s'}, 'verbose': {'datefmt': '%d/%b/%Y %H:%M:%S', 'format': '[%(asctime)s] %(levelname)s ' '[%(name)s:%(lineno)s] %(message)s'}}, 'handlers': {'file': {'backupCount': 10, 'class': 'logging.handlers.TimedRotatingFileHandler', 'filename': '/home/deploy/activbooking/logs/2023-03-06.log', 'formatter': 'verbose', 'level': 'INFO', 'when': 'D'}}, 'loggers': {'': {'handlers': ['file'], 'level': 'INFO'}, 'django': {'handlers': ['file'], 'level': 'INFO'}}, 'version': 1} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | None |
MANAGERS | ('activbookingstage@gmail.com',) |
MAP_WIDGETS | {'GOOGLE_MAP_API_KEY': '********************', 'GooglePointFieldWidget': (('zoom', 8), ('mapCenterLocationName', 'Portugal'))} |
MEDIA_ROOT | '/home/abooking/activbookings_platform/media' |
MEDIA_URL | '/media/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['raven.contrib.django.middleware.DjangoRestFrameworkCompatMiddleware', 'raven.contrib.django.middleware.SentryMiddleware', 'apps.multi_tenant.middleware.TenantMiddleware', 'apps.multi_tenant.middleware.OperatorLocaleMiddleware', 'django.middleware.security.SecurityMiddleware', 'django.middleware.locale.LocaleMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'corsheaders.middleware.CorsMiddleware', 'django.middleware.common.CommonMiddleware', 'core.middleware.DisableCSRF', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'apps.api.v1.middleware.APIUserMiddleware', 'apps.redirects.middleware.RedirectFallbackMiddleware', 'apps.multi_tenant.middleware.IFrameOptionsMiddleware', 'django_currentuser.middleware.ThreadLocalUserMiddleware'] |
MIDDLEWARE_CLASSES | ['django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
MYPAGES_TEMPLATE_DIR | '/home/abooking/activbookings_platform/mypages_templates' |
NUMBER_GROUPING | 0 |
PAGINATION_OPTIONS | [10, 20, 50] |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PHOTOLOGUE_PATH | <function image_file_namer at 0x7fdee9b26bf8> |
PREPEND_WWW | False |
PROJECT_URL | 'https://activbookings.w2.dengun.net' |
RAVEN_CONFIG | {'dsn': 'https://182456bdea1d453ca7ccfd5f4b42177a:b813a04464174011996c6c3d3ba7c6aa@sentry.io/1301117', 'release': 'bb244e60b412c4d8308fd2ab03576ae8e92d1fff'} |
REST_FRAMEWORK | {'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.LimitOffsetPagination', 'EXCEPTION_HANDLER': 'apps.api.v1.exceptions.ApiV1ExceptionHandler', 'JWT_EXPIRATION_DELTA': datetime.timedelta(1), 'PAGE_SIZE': 50} |
ROOT_DIR | <Path:/home/abooking/activbookings_platform/activbookings/src> |
ROOT_URLCONF | 'conf.urls.web' |
SECRET_KEY | '********************' |
SECURE_BROWSER_XSS_FILTER | False |
SECURE_CONTENT_TYPE_NOSNIFF | False |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_PRELOAD | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | None |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | False |
SERVER_EMAIL | 'root@localhost' |
SERVER_ROOT | '/home/abooking/activbookings_platform' |
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_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 | 'conf.settings.production' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | ['auth.W004'] |
SITE_ID | 1 |
SPA_ROOT | '/home/abooking/activbookings_platform/app' |
SPA_URL | '/app/' |
STATICFILES_DIRS | ('/home/abooking/activbookings_platform/activbookings/src/static',) |
STATICFILES_FINDERS | ('django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder') |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/home/abooking/activbookings_platform/staticfiles' |
STATIC_URL | '/static/' |
STYLE_CONTAINER_CLASSES | (('contacts', 'Contacts - grey background'),) |
SWAGGER_SETTINGS | {'SECURITY_DEFINITIONS': {'APIkey': '********************', 'Bearer': {'description': 'Get Json Web Token from ' 'authorization endpoint ' '(only admin)\n' ' ' '**** Authorization: ' 'Bearer [JWT]\n' ' ', 'in': 'header', 'name': 'Authorization', 'type': 'apiKey'}}} |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['/home/abooking/activbookings_platform/activbookings/src/templates', '/home/abooking/activbookings_platform/mypages_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'], 'debug': True}}] |
TEST_MODE | False |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
THIRD_PARTY_APPS | ('taggit', 'nested_admin', 'mapwidgets', 'multiselectfield', 'wkhtmltopdf', 'ckeditor', 'django_countries', 'rest_framework', 'drf_yasg') |
THOUSAND_SEPARATOR | ',' |
TIME_FORMAT | 'P' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'UTC' |
USE_ETAGS | False |
USE_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | True |
USE_X_FORWARDED_HOST | False |
USE_X_FORWARDED_PORT | False |
WKHTMLTOPDF_CMD_OPTIONS | {'quiet': True} |
WSGI_APPLICATION | None |
X_FRAME_OPTIONS | 'SAMEORIGIN' |
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.