Cannot resolve keyword 'label2' into field. Choices are: end_date, end_date_written, end_end_date, end_start_date, id, isoCode_639_3, label, label_type, label_type_id, start_date, start_date_written, start_end_date, start_start_date, temp_entity, temp_entity_id
Request Method: | GET |
---|---|
Request URL: | http://ttnr.qprf.de/apis/entities/entity/work/42104/detail?WoL-sort=label2 |
Django Version: | 3.1.5 |
Exception Type: | FieldError |
Exception Value: | Cannot resolve keyword 'label2' into field. Choices are: end_date, end_date_written, end_end_date, end_start_date, id, isoCode_639_3, label, label_type, label_type_id, start_date, start_date_written, start_end_date, start_start_date, temp_entity, temp_entity_id |
Exception Location: | /home/ttnr/ttnr/apisenv/lib/python3.6/site-packages/django/db/models/sql/query.py, line 1482, in names_to_path |
Python Executable: | /home/ttnr/ttnr/apisenv/bin/python3.6 |
Python Version: | 3.6.12 |
Python Path: | ['/home/ttnr/ttnr', '/home/ttnr/ttnr/apisenv/bin', '/home/ttnr/ttnr/apisenv/lib/python36.zip', '/home/ttnr/ttnr/apisenv/lib/python3.6', '/home/ttnr/ttnr/apisenv/lib/python3.6/lib-dynload', '/usr/local/lib/python3.6', '/home/ttnr/ttnr/apisenv/lib/python3.6/site-packages'] |
Server time: | Fri, 29 Mar 2024 11:25:58 +0000 |
/home/ttnr/ttnr/apisenv/lib/python3.6/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 | FieldError("Cannot resolve keyword 'label2' into field. Choices are: end_date, end_date_written, end_end_date, end_start_date, id, isoCode_639_3, label, label_type, label_type_id, start_date, start_date_written, start_end_date, start_start_date, temp_entity, temp_entity_id",) |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7f023191bcc0>> |
request | <WSGIRequest: GET '/apis/entities/entity/work/42104/detail?WoL-sort=label2'> |
/home/ttnr/ttnr/apisenv/lib/python3.6/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 GenericEntitiesDetailView at 0x7f023087da60> |
callback_args | () |
callback_kwargs | {'entity': 'work', 'pk': '42104'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f02318a7438>> |
request | <WSGIRequest: GET '/apis/entities/entity/work/42104/detail?WoL-sort=label2'> |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f023191bcc0> |
wrapped_callback | <function GenericEntitiesDetailView at 0x7f023087da60> |
/home/ttnr/ttnr/apisenv/lib/python3.6/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 'apis_core.apis_entities.detail_views.GenericEntitiesDetailView'> |
initkwargs | {} |
kwargs | {'entity': 'work', 'pk': '42104'} |
request | <WSGIRequest: GET '/apis/entities/entity/work/42104/detail?WoL-sort=label2'> |
self | <apis_core.apis_entities.detail_views.GenericEntitiesDetailView object at 0x7f022feb4358> |
/home/ttnr/ttnr/apisenv/lib/python3.6/site-packages/django/contrib/auth/mixins.py
, line 109, in dispatch
"""
return self.test_func
def dispatch(self, request, *args, **kwargs):
user_test_result = self.get_test_func()()
if not user_test_result:
return self.handle_no_permission()
return super().dispatch(request, *args, **kwargs)…
Variable | Value |
---|---|
__class__ | <class 'django.contrib.auth.mixins.UserPassesTestMixin'> |
args | () |
kwargs | {'entity': 'work', 'pk': '42104'} |
request | <WSGIRequest: GET '/apis/entities/entity/work/42104/detail?WoL-sort=label2'> |
self | <apis_core.apis_entities.detail_views.GenericEntitiesDetailView object at 0x7f022feb4358> |
user_test_result | True |
/home/ttnr/ttnr/apisenv/lib/python3.6/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 GenericEntitiesDetailView.get of <apis_core.apis_entities.detail_views.GenericEntitiesDetailView object at 0x7f022feb4358>> |
kwargs | {'entity': 'work', 'pk': '42104'} |
request | <WSGIRequest: GET '/apis/entities/entity/work/42104/detail?WoL-sort=label2'> |
self | <apis_core.apis_entities.detail_views.GenericEntitiesDetailView object at 0x7f022feb4358> |
/home/ttnr/ttnr/apis_core/apis_entities/detail_views.py
, line 78, in get
)
object_lod = Uri.objects.filter(entity=instance)
object_texts, ann_proj_form = get_highlighted_texts(request, instance)
object_labels = Label.objects.filter(temp_entity=instance)
tb_label = LabelTableBase(data=object_labels, prefix=entity.title()[:2]+'L-')
tb_label_open = request.GET.get('PL-page', None)
side_bar.append(('Label', tb_label, 'PersonLabel', tb_label_open))
RequestConfig(request, paginate={"per_page": 10}).configure(tb_label)…
template = select_template([
'apis_entities/detail_views/{}_detail_generic.html'.format(entity),
'apis_entities/detail_views/entity_detail_generic.html'
])
tei = getattr(settings, "APIS_TEI_TEXTS", [])
if tei:
Variable | Value |
---|---|
ann_proj_form | False |
args | () |
dict_1 | {'related_workA': <Work: The Political Science of Global Warming (Wall Street Journal)>} |
dict_2 | {'related_workB': <Work: The Political Science of Global Warming (Wall Street Journal)>} |
entity | 'work' |
entity_model | <class 'apis_core.apis_entities.models.Work'> |
instance | <Work: The Political Science of Global Warming (Wall Street Journal)> |
kwargs | {'entity': 'work', 'pk': '42104'} |
match | ['work', 'work'] |
object_labels | <QuerySet [<Label: CSP0007O>]> |
object_lod | <QuerySet [<Uri: https://thinktanknetworkresearch.net/entity/42104/>]> |
object_texts | [] |
objects | <RelationPublishedQueryset [<WorkWork: The Political Science of Global Warming (Wall Street Journal) (uses frame) A1: Contesting IPCC legitimacy (implicitly or explicitly)>, <WorkWork: The Political Science of Global Warming (Wall Street Journal) (uses frame) B7: It is happening, but it is not us or it is not only us (other issues are also causes/main causes)>, <WorkWork: The Political Science of Global Warming (Wall Street Journal) (uses frame) C10: Criticism of non-scientist defenders & messages & policies on a non-scientific basis>, <WorkWork: The Political Science of Global Warming (Wall Street Journal) (uses frame) D19: Other>]> |
pk | '42104' |
prefix | 'WoWo-' |
rel | <class 'apis_core.apis_relations.models.WorkWork'> |
relations | [<class 'apis_core.apis_relations.models.EventWork'>, <class 'apis_core.apis_relations.models.InstitutionWork'>, <class 'apis_core.apis_relations.models.PersonWork'>, <class 'apis_core.apis_relations.models.PlaceWork'>, <class 'apis_core.apis_relations.models.WorkWork'>] |
request | <WSGIRequest: GET '/apis/entities/entity/work/42104/detail?WoL-sort=label2'> |
self | <apis_core.apis_entities.detail_views.GenericEntitiesDetailView object at 0x7f022feb4358> |
side_bar | [('Event', <apis_core.apis_relations.tables.get_generic_relations_table.<locals>.RelationTableDetail object at 0x7f022febc6d8>, 'EventWork', None), ('Institution', <apis_core.apis_relations.tables.get_generic_relations_table.<locals>.RelationTableDetail object at 0x7f022fea4c50>, 'InstitutionWork', None), ('Person', <apis_core.apis_relations.tables.get_generic_relations_table.<locals>.RelationTableDetail object at 0x7f022f6957b8>, 'PersonWork', None), ('Place', <apis_core.apis_relations.tables.get_generic_relations_table.<locals>.RelationTableDetail object at 0x7f022fa96208>, 'PlaceWork', None), ('Work', <apis_core.apis_relations.tables.get_generic_relations_table.<locals>.RelationTableDetail object at 0x7f022f693f60>, 'WorkWork', None), ('Label', <apis_core.apis_relations.tables.LabelTableBase object at 0x7f022feb4198>, 'PersonLabel', None)] |
table | <class 'apis_core.apis_relations.tables.get_generic_relations_table.<locals>.RelationTableDetail'> |
tb_label | <apis_core.apis_relations.tables.LabelTableBase object at 0x7f022feb4198> |
tb_label_open | None |
tb_object | <apis_core.apis_relations.tables.get_generic_relations_table.<locals>.RelationTableDetail object at 0x7f022f693f60> |
tb_object_open | None |
title_card | 'Work' |
/home/ttnr/ttnr/apisenv/lib/python3.6/site-packages/django_tables2/config.py
, line 42, in configure
Configure a table using information from the request.
Arguments:
table (`~.Table`): table to be configured
"""
order_by = self.request.GET.getlist(table.prefixed_order_by_field)
if order_by:
table.order_by = order_by…
if self.paginate:
if hasattr(self.paginate, "items"):
kwargs = dict(self.paginate)
else:
kwargs = {}
# extract some options from the request
Variable | Value |
---|---|
order_by | ['label2'] |
self | <django_tables2.config.RequestConfig object at 0x7f022fb753c8> |
table | <apis_core.apis_relations.tables.LabelTableBase object at 0x7f022feb4198> |
/home/ttnr/ttnr/apisenv/lib/python3.6/site-packages/django_tables2/tables.py
, line 543, in order_by
# everything's been converted to a iterable, accept iterable!
for alias in order_by:
name = OrderBy(alias).bare
if name in self.columns and self.columns[name].orderable:
valid.append(alias)
self._order_by = OrderByTuple(valid)
self.data.order_by(self._order_by)…
@property
def order_by_field(self):
return (
self._order_by_field if self._order_by_field is not None else self._meta.order_by_field
)
Variable | Value |
---|---|
alias | 'label2' |
name | 'label2' |
order_by | ['label2'] |
self | <apis_core.apis_relations.tables.LabelTableBase object at 0x7f022feb4198> |
valid | ['label2'] |
value | ['label2'] |
/home/ttnr/ttnr/apisenv/lib/python3.6/site-packages/django_tables2/data.py
, line 226, in order_by
# custom ordering
if modified_any:
return
# Traditional ordering
if accessors:
order_by_accessors = (a.for_queryset() for a in accessors)
self.data = self.data.order_by(*order_by_accessors)…
@cached_property
def verbose_name(self):
"""
The full (singular) name for the data.
Variable | Value |
---|---|
accessors | ['label2'] |
alias | 'label2' |
aliases | ('label2',) |
bound_column | <django_tables2.columns.base.BoundColumn object at 0x7f022fb754e0> |
modified | False |
modified_any | False |
order_by_accessors | <generator object TableQuerysetData.order_by.<locals>.<genexpr> at 0x7f02301d9308> |
queryset | <QuerySet [<Label: CSP0007O>]> |
self | <django_tables2.data.TableQuerysetData object at 0x7f022f906208> |
/home/ttnr/ttnr/apisenv/lib/python3.6/site-packages/django/db/models/query.py
, line 1134, in order_by
def order_by(self, *field_names):
"""Return a new QuerySet instance with the ordering changed."""
assert not self.query.is_sliced, \
"Cannot reorder a query once a slice has been taken."
obj = self._chain()
obj.query.clear_ordering(force_empty=False)
obj.query.add_ordering(*field_names)…
return obj
def distinct(self, *field_names):
"""
Return a new QuerySet instance that will select only distinct results.
"""
Variable | Value |
---|---|
field_names | ('label2',) |
obj | <QuerySet [<Label: CSP0007O>]> |
self | <QuerySet [<Label: CSP0007O>]> |
/home/ttnr/ttnr/apisenv/lib/python3.6/site-packages/django/db/models/sql/query.py
, line 1919, in add_ordering
item = item[1:]
if item in self.annotations:
continue
if self.extra and item in self.extra:
continue
# names_to_path() validates the lookup. A descriptive
# FieldError will be raise if it's not.
self.names_to_path(item.split(LOOKUP_SEP), self.model._meta)…
elif not hasattr(item, 'resolve_expression'):
errors.append(item)
if getattr(item, 'contains_aggregate', False):
raise FieldError(
'Using an aggregate in order_by() without also including '
'it in annotate() is not allowed: %s' % item
Variable | Value |
---|---|
errors | [] |
item | 'label2' |
ordering | ('label2',) |
self | <django.db.models.sql.query.Query object at 0x7f022fb759b0> |
/home/ttnr/ttnr/apisenv/lib/python3.6/site-packages/django/db/models/sql/query.py
, line 1482, in names_to_path
if pos == -1 or fail_on_missing:
available = sorted([
*get_field_names_from_opts(opts),
*self.annotation_select,
*self._filtered_relations,
])
raise FieldError("Cannot resolve keyword '%s' into field. "
"Choices are: %s" % (name, ", ".join(available)))…
break
# Check if we need any joins for concrete inheritance cases (the
# field lives in parent, but we are currently in one of its
# children)
if model is not opts.model:
path_to_parent = opts.get_path_to_parent(model)
Variable | Value |
---|---|
allow_many | True |
available | ['end_date', 'end_date_written', 'end_end_date', 'end_start_date', 'id', 'isoCode_639_3', 'label', 'label_type', 'label_type_id', 'start_date', 'start_date_written', 'start_end_date', 'start_start_date', 'temp_entity', 'temp_entity_id'] |
cur_names_with_path | ('label2', []) |
fail_on_missing | False |
field | None |
filtered_relation | None |
name | 'label2' |
names | ['label2'] |
names_with_path | [] |
opts | <Options for Label> |
path | [] |
pos | -1 |
self | <django.db.models.sql.query.Query object at 0x7f022fb759b0> |
AnonymousUser
Variable | Value |
---|---|
WoL-sort | 'label2' |
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
HTTP_ACCEPT | '*/*' |
HTTP_CONNECTION | 'close' |
HTTP_HOST | 'ttnr.qprf.de' |
HTTP_USER_AGENT | 'claudebot' |
HTTP_X_FORWARDED_FOR | '3.239.162.98' |
HTTP_X_FORWARDED_PROTO | 'http' |
PATH_INFO | '/apis/entities/entity/work/42104/detail' |
QUERY_STRING | 'WoL-sort=label2' |
RAW_URI | '/apis/entities/entity/work/42104/detail?WoL-sort=label2' |
REMOTE_ADDR | '' |
REQUEST_METHOD | 'GET' |
SCRIPT_NAME | '' |
SERVER_NAME | 'ttnr.qprf.de' |
SERVER_PORT | '80' |
SERVER_PROTOCOL | 'HTTP/1.0' |
SERVER_SOFTWARE | 'gunicorn/20.0.4' |
gunicorn.socket | <socket.socket fd=12, family=AddressFamily.AF_UNIX, type=SocketKind.SOCK_STREAM, proto=0, laddr=/run/gunicorn.sock> |
wsgi.errors | <gunicorn.http.wsgi.WSGIErrorsWrapper object at 0x7f022f8fb160> |
wsgi.file_wrapper | <class 'gunicorn.http.wsgi.FileWrapper'> |
wsgi.input | <gunicorn.http.body.Body object at 0x7f022f8fb390> |
wsgi.input_terminated | True |
wsgi.multiprocess | True |
wsgi.multithread | False |
wsgi.run_once | False |
wsgi.url_scheme | 'http' |
wsgi.version | (1, 0) |
apis.settings.server
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ACDH_IMPRINT_URL | 'https://shared.acdh.oeaw.ac.at/acdh-common-assets/api/imprint.php?serviceID=' |
ADMINS | [] |
ALLOWED_HOSTS | ['thinktanknetworkresearch.net', 'ttnr.qprf.de'] |
APIS_ALTERNATE_NAMES | '********************' |
APIS_API_EXCLUDE_SETS | '********************' |
APIS_BASE_URI | '********************' |
APIS_CETEICEAN_CSS | '********************' |
APIS_CETEICEAN_JS | '********************' |
APIS_COMPONENTS | '********************' |
APIS_DELETE_VIEW_TEMPLATE | '********************' |
APIS_DETAIL_VIEWS_ALLOWED | '********************' |
APIS_ENTITIES | '********************' |
APIS_IIIF_ENT_IIIF_REL | '********************' |
APIS_IIIF_SERVER | '********************' |
APIS_IIIF_WORK_KIND | '********************' |
APIS_LIST_VIEWS_ALLOWED | '********************' |
APIS_LIST_VIEW_TEMPLATE | '********************' |
APIS_METAINFO | '********************' |
APIS_MIN_CHAR | '********************' |
APIS_NEXT_PREV | '********************' |
APIS_OSD_IMG_PREFIX | '********************' |
APIS_OSD_JS | '********************' |
APIS_RELATIONS | '********************' |
APIS_RELATIONS_FILTER_EXCLUDE | '********************' |
APIS_TEI_TEXTS | '********************' |
APIS_VOCABULARIES | '********************' |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ('django.contrib.auth.backends.ModelBackend', 'guardian.backends.ObjectPermissionBackend') |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'auth.User' |
BASE_DIR | '/home/ttnr/ttnr' |
BIRTH_REL_NAME | 'place of birth' |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CORS_ALLOW_CREDENTIALS | True |
CORS_ALLOW_METHODS | ('GET', 'OPTIONS') |
CORS_ORIGIN_ALLOW_ALL | True |
CRISPY_TEMPLATE_PACK | 'bootstrap3' |
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': '127.0.0.1', 'NAME': 'ttnr21', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': '5432', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIGRATE': True, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'ttnr'}} |
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'] |
DEATH_REL_NAME | 'place of death' |
DEBUG | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
DECIMAL_SEPARATOR | '.' |
DEFAULT_CHARSET | 'utf-8' |
DEFAULT_EXCEPTION_REPORTER | 'django.views.debug.ExceptionReporter' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
DEFAULT_FROM_EMAIL | 'webmaster@localhost' |
DEFAULT_HASHING_ALGORITHM | 'sha256' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DEV_VERSION | True |
DISALLOWED_USER_AGENTS | [] |
DJANGO_TABLES2_TEMPLATE | 'django_tables2/bootstrap4.html' |
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 | [] |
INSTALLED_APPS | ['dal', 'dal_select2', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'reversion', 'crispy_forms', 'django_filters', 'django_tables2', 'rest_framework', 'webpage', 'browsing', 'apis_core.apis_entities', 'apis_core.apis_metainfo', 'apis_core.apis_relations', 'apis_core.apis_vocabularies', 'apis_core.apis_labels', 'rest_framework.authtoken', 'drf_spectacular', 'guardian', 'charts', 'infos'] |
INTERNAL_IPS | [] |
LANGUAGES | [('af', 'Afrikaans'), ('ar', 'Arabic'), ('ar-dz', 'Algerian Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 'Welsh'), ('da', 'Danish'), ('de', 'German'), ('dsb', 'Lower Sorbian'), ('el', 'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 'Argentinian Spanish'), ('es-co', 'Colombian Spanish'), ('es-mx', 'Mexican Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve', 'Venezuelan Spanish'), ('et', 'Estonian'), ('eu', 'Basque'), ('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('fy', 'Frisian'), ('ga', 'Irish'), ('gd', 'Scottish Gaelic'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hsb', 'Upper Sorbian'), ('hu', 'Hungarian'), ('hy', 'Armenian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('ig', 'Igbo'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kab', 'Kabyle'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('ky', 'Kyrgyz'), ('lb', 'Luxembourgish'), ('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk', 'Macedonian'), ('ml', 'Malayalam'), ('mn', 'Mongolian'), ('mr', 'Marathi'), ('my', 'Burmese'), ('nb', 'Norwegian Bokmål'), ('ne', 'Nepali'), ('nl', 'Dutch'), ('nn', 'Norwegian Nynorsk'), ('os', 'Ossetic'), ('pa', 'Punjabi'), ('pl', 'Polish'), ('pt', 'Portuguese'), ('pt-br', 'Brazilian Portuguese'), ('ro', 'Romanian'), ('ru', 'Russian'), ('sk', 'Slovak'), ('sl', 'Slovenian'), ('sq', 'Albanian'), ('sr', 'Serbian'), ('sr-latn', 'Serbian Latin'), ('sv', 'Swedish'), ('sw', 'Swahili'), ('ta', 'Tamil'), ('te', 'Telugu'), ('tg', 'Tajik'), ('th', 'Thai'), ('tk', 'Turkmen'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('uz', 'Uzbek'), ('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese')] |
LANGUAGES_BIDI | ['he', 'ar', 'ar-dz', 'fa', 'ur'] |
LANGUAGE_CODE | 'en' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_HTTPONLY | False |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LANGUAGE_COOKIE_SAMESITE | None |
LANGUAGE_COOKIE_SECURE | False |
LOCALE_PATHS | [] |
LOGGING | {} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | None |
MANAGERS | [] |
MAX_AGE | 3600 |
MEDIA_ROOT | '/home/ttnr/ttnr/media/' |
MEDIA_URL | '/media/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['allow_cidr.middleware.AllowCIDRMiddleware', 'corsheaders.middleware.CorsMiddleware', 'django.middleware.security.SecurityMiddleware', 'whitenoise.middleware.WhiteNoiseMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'reversion.middleware.RevisionMiddleware', 'crum.CurrentRequestUserMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PREPEND_WWW | False |
PROJECT_DEFAULT_MD | {'app_type': 'database', 'author': 'Matthias Schlögl, Peter Andorfer', 'description': 'This is a default metadata file. To change this, provide ' 'provide a following file ' '{PROJECT_SHARED}/{PROJECT_NAME}/metadata.json', 'github': 'https://github.com/acdh-oeaw/apis-webpage-base', 'imprint': '/imprint', 'matomo_id': '', 'matomo_url': '', 'production instance': None, 'purpose_de': '', 'purpose_en': '', 'social_media': [('fab fa-twitter fa-2x', 'https://twitter.com/ACDH_OeAW'), ('fab fa-youtube fa-2x', 'https://www.youtube.com/channel/UCgaEMaMbPkULYRI5u6gvG-w')], 'subtitle': 'SUBTITLE', 'title': 'TITLE', 'version': ['apis_core', 'charts', 'django']} |
PROJECT_NAME | 'apis' |
PROJECT_SHARED | 'https://shared.acdh.oeaw.ac.at/apis/' |
REST_FRAMEWORK | {'DEFAULT_AUTHENTICATION_CLASSES': ('rest_framework.authentication.TokenAuthentication', 'rest_framework.authentication.SessionAuthentication', 'rest_framework.authentication.BasicAuthentication'), 'DEFAULT_FILTER_BACKENDS': ('django_filters.rest_framework.DjangoFilterBackend', 'drf_spectacular.contrib.django_filters.DjangoFilterBackend'), 'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.LimitOffsetPagination', 'DEFAULT_PERMISSION_CLASSES': ('rest_framework.permissions.DjangoObjectPermissions',), 'DEFAULT_SCHEMA_CLASS': 'drf_spectacular.openapi.AutoSchema', 'PAGE_SIZE': 50} |
ROOT_URLCONF | 'apis.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 | ('HTTP_X_FORWARDED_PROTO', 'https') |
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 | 'apis.settings.server' |
SHARED_URL | 'https://shared.acdh.oeaw.ac.at/' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
SPECTACULAR_SETTINGS | {'COMPONENT_NO_READ_ONLY_REQUIRED': True, 'COMPONENT_SPLIT_REQUEST': True, 'DESCRIPTIOPN': 'Provides access to the main APIS data-model endpoints.', 'LICENSE': {'name': 'MIT License', 'url': 'https://www.mit.edu/~amini/LICENSE.md'}, 'TITLE': 'APIS generic API', 'VERSION': '0.13'} |
STATICFILES_DIRS | [] |
STATICFILES_FINDERS | ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder'] |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/home/ttnr/ttnr/staticfiles/' |
STATIC_URL | '/static/' |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [], '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', 'webpage.webpage_content_processors.installed_apps', 'webpage.webpage_content_processors.is_dev_version', 'webpage.webpage_content_processors.get_db_name', 'webpage.webpage_content_processors.title_img', 'webpage.webpage_content_processors.logo_img', 'webpage.webpage_content_processors.custom_css', 'webpage.webpage_content_processors.shared_url', 'webpage.webpage_content_processors.apis_app_name', 'apis_core.context_processors.custom_context_processors.add_entities', 'apis_core.context_processors.custom_context_processors.add_relations', 'apis_core.context_processors.custom_context_processors.add_apis_settings']}}] |
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 | True |
USE_X_FORWARDED_PORT | False |
WSGI_APPLICATION | 'apis.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.