list index out of range
Request Method: | GET |
---|---|
Request URL: | https://maartenv.be/gitar/joeni/validigo/8dbdd43fe6eb108520fa |
Django Version: | 4.2.7 |
Exception Type: | IndexError |
Exception Value: | list index out of range |
Exception Location: | /srv/django/website/gitar/GitActions/CommitInfo.py, line 138, in process_file |
Raised during: | gitar.views.commit |
Python Executable: | /usr/bin/uwsgi |
Python Version: | 3.11.7 |
Python Path: | ['.', '', '/usr/lib/python311.zip', '/usr/lib/python3.11', '/usr/lib/python3.11/lib-dynload', '/home/maarten/.local/lib/python3.11/site-packages', '/usr/lib/python3.11/site-packages'] |
Server time: | Fri, 29 Mar 2024 06:35:15 +0100 |
/usr/lib/python3.11/site-packages/django/core/handlers/exception.py
, line 55, in inner
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 | IndexError('list index out of range') |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7c073f7ca150>> |
request | <WSGIRequest: GET '/gitar/joeni/validigo/8dbdd43fe6eb108520fa'> |
/usr/lib/python3.11/site-packages/django/core/handlers/base.py
, line 197, 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 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 commit at 0x7c073f060720> |
callback_args | () |
callback_kwargs | {'commit_hash': '8dbdd43fe6eb108520fa', 'repository_name': 'joeni'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <CsrfViewMiddleware get_response=convert_exception_to_response.<locals>.inner>> |
request | <WSGIRequest: GET '/gitar/joeni/validigo/8dbdd43fe6eb108520fa'> |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7c073f7ca150> |
wrapped_callback | <function commit at 0x7c073f060720> |
/srv/django/website/gitar/views.py
, line 95, in commit
context["other_lines"] = parts[1]
# Final formatting:
if "other_lines" in context:
context["other_lines"] = context["other_lines"].replace('\n\n','<br>').replace('\n', ' ')
# Processing the modified files
for modified_file in c.modified_files:
#print("FILE")
processed = CommitInfo.prepare_and_process(modified_file) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^…
#print(processed)
context["modified_files"].append(processed)
#html_code_before = None
#html_code_after = None
#if modified_file.source_code_before is not None:
#html_code_before = code_to_HTML(
Variable | Value |
---|---|
c | <pydriller.domain.commit.Commit object at 0x7c070d183050> |
commit_hash | '8dbdd43fe6eb108520fa' |
commit_repo | <pydriller.repository.Repository object at 0x7c070cda6790> |
context | {'commit': <pydriller.domain.commit.Commit object at 0x7c070d183050>, 'first_line': 'Fix bugs and improve roster functionality', 'footer_description': 'Gitar is a simple web app that allows its users to ' 'easily share Git repos in combination with the Django ' 'framework.', 'footer_links': [['Home page', '/']], 'footer_title': 'Gitar', 'modified_files': [], 'navbar_backArrow': False, 'navbar_title': 'Gitar', 'other_lines': 'There were some bugs regarding conflicting events, but these ' 'are now properly handled. In the templates, the information ' 'is now also properly presented, albeit not in an asthetically ' 'pleasing way yet. The prototype CSS file was also updated ' 'accordingly.', 'stylesheet_name': 'gitar'} |
modified_file | <pydriller.domain.commit.ModifiedFile object at 0x7c070cf8f110> |
parts | ['Fix bugs and improve roster functionality', 'There were some bugs regarding conflicting events, but these are now ' 'properly\n' 'handled. In the templates, the information is now also properly presented,\n' 'albeit not in an asthetically pleasing way yet. The prototype CSS file was ' 'also\n' 'updated accordingly.'] |
repository_model | <Repository: joeni> |
repository_name | 'joeni' |
request | <WSGIRequest: GET '/gitar/joeni/validigo/8dbdd43fe6eb108520fa'> |
template | 'gitar/commit.djhtml' |
/srv/django/website/gitar/GitActions/CommitInfo.py
, line 54, in prepare_and_process
pass
deleted[number] = line
if result["path"] == "Challenge 4/Controller.java":
pass
#print("NU CONTROLLER.jAVA")
#print(modified_file.diff_parsed)
#print(deleted)
result["rows"] = process_file(…
result["html_code_before"],
result["html_code_after"],
added,
deleted)
# These three lists are going to be empty if the methods couldn't be detected
Variable | Value |
---|---|
added | {26: ' #for event in events.order_by("begin_time"):', 27: ' for event in events:', 32: ' #print("comparing" + str(possible_conflict) + " - " + ' 'str(event))', 36: ' #print(test_conflict)', 38: ' test_conflict.append(event)', 43: ' if len(test_conflict) >= 2:', 44: ' conflicts.append(test_conflict.copy())', 51: ' for conflict in conflicts:', 55: ' if event.note == "Conflict " + str(conflict_number):', 58: ' replacement = Event(', 59: ' begin_time = conflicts[0].begin_time,', 60: ' end_time = conflicts[-1].end_time,', 61: ' note = "Conflict " + str(conflict_number),', 63: ' events.append(replacement)', 88: " content = _('<strong>Conflicting events!<br />See <a " 'href="#\'+event.note+\'">\'+event.note+\'</a> for more ' "information.</strong>')", 124: ' style = ""', 127: ' style = ""', 139: ' earliest = events[0].begin_time', 140: ' latest = events[0].begin_time', 141: ' for event in events:', 142: ' if event.begin_time < earliest:', 143: ' earliest = event.begin_time', 144: ' if event.begin_time > latest:', 145: ' latest = event.begin_time', 171: ' print(conflicting_events(events))', 172: ' #raise ValueError("events contains conflicts!")', 199: ' conflict = (event.note.startswith("Conflict ")))', 215: ' if len(events) == 0:', 216: ' return {}, []', 217: ' events = list(events.order_by("begin_time"))', 219: ' print(conflict_dict)', 220: ' for event in events:', 221: ' print(event.begin_time)', 227: ' return conflict_dict, table_code'} |
deleted | {26: ' for event in events.order_by("begin_time"):', 35: ' pass', 46: ' for conflict in conflicting_events:', 50: ' if event.note == "Conflict - " + str(conflict_number):', 53: ' replacement = Event.create(', 54: ' conflicts[0].begin_time,', 55: ' conflicts[-1].end_time,', 56: ' note = "Conflict - " + str(conflict_number),', 58: ' events.add(replacement)', 83: " content = _('Conflicting events! Consult <a " 'href="#\'+event.note+\'">block \'+event.note+\'</a> for more ' "information.')", 132: ' ord_ev = events.order_by("begin_time")', 133: ' earliest = ord_ev[0].begin_time', 134: ' latest = ord_ev.last().begin_time', 160: ' raise ValueError("events contains conflicts!")', 187: ' conflict = (event.note.startswith("Conflict - ")))', 202: '', 203: '', 204: '', 205: '', 206: '', 207: '', 208: '', 216: ' return table_code', 217: '', 218: '', 219: '', 220: '', 221: ''} |
line | '' |
modified_file | <pydriller.domain.commit.ModifiedFile object at 0x7c070cf8f110> |
number | 221 |
result | {'change_type': <ModificationType.MODIFY: 5>, 'html_code_after': ['<div class="source"><pre><span></span><span ' 'class="sd">""" This is a module dedicated ' 'to collecting all functionality regarding the</span>', '<span class="sd">building of the roster. ' '"""</span>', '<span class="kn">from</span> <span ' 'class="nn">django.shortcuts</span> <span ' 'class="kn">import</span> <span class="n">render</span>', '<span class="kn">from</span> <span ' 'class="nn">collections</span> <span ' 'class="kn">import</span> <span ' 'class="n">OrderedDict</span>', '<span class="kn">import</span> <span ' 'class="nn">datetime</span>', '<span class="kn">from</span> <span ' 'class="nn">django.urls</span> <span ' 'class="kn">import</span> <span class="n">reverse</span>', '<span class="kn">from</span> <span ' 'class="nn">django.utils.translation</span> <span ' 'class="kn">import</span> <span class="n">gettext</span> ' '<span class="k">as</span> <span class="n">_</span>', '<span class="kn">from</span> <span ' 'class="nn">.models</span> <span class="kn">import</span> ' '<span class="o">*</span>', '<span class="kn">import</span> <span ' 'class="nn">administration</span>', '', '<span class="k">def</span> <span ' 'class="nf">same_day</span><span class="p">(</span><span ' 'class="n">datetime_a</span><span class="p">,</span> ' '<span class="n">datetime_b</span><span ' 'class="p">):</span>', '<span class="w"> </span><span ' 'class="sd">"""True if both a and b are on ' 'the same day, false otherwise."""</span>', ' <span class="k">return</span> <span ' 'class="p">(</span>', ' <span class="n">datetime_a</span><span ' 'class="o">.</span><span class="n">day</span> <span ' 'class="o">==</span> <span ' 'class="n">datetime_b</span><span class="o">.</span><span ' 'class="n">day</span> <span class="ow">and</span>', ' <span class="n">datetime_a</span><span ' 'class="o">.</span><span class="n">month</span> <span ' 'class="o">==</span> <span ' 'class="n">datetime_b</span><span class="o">.</span><span ' 'class="n">month</span> <span class="ow">and</span>', ' <span class="n">datetime_a</span><span ' 'class="o">.</span><span class="n">year</span> <span ' 'class="o">==</span> <span ' 'class="n">datetime_b</span><span class="o">.</span><span ' 'class="n">year</span><span class="p">)</span>', '', '<span class="k">def</span> <span ' 'class="nf">same_daytime</span><span ' 'class="p">(</span><span class="n">moment</span><span ' 'class="p">,</span> <span class="n">hour</span><span ' 'class="p">,</span> <span class="n">minute</span><span ' 'class="p">):</span>', ' <span class="k">return</span> <span ' 'class="p">(</span><span class="n">moment</span><span ' 'class="o">.</span><span class="n">minute</span> <span ' … <trimmed 115996 bytes string> |
/srv/django/website/gitar/GitActions/CommitInfo.py
, line 138, in process_file
#try:
#row["line"] = source_before[before_count]
#print(len(source_before))
#print(before_count)
if before_count == len(source_before):
row["line"] = source_before[-1]
else:
row["line"] = source_before[before_count] ^^^^^^^^^^^^^^^^^^^^^^^^^^^…
#except:
#pass
before_count += 1
elif after_count in additions:
row["type"] = "addition"
Variable | Value |
---|---|
additions | {26: ' #for event in events.order_by("begin_time"):', 27: ' for event in events:', 32: ' #print("comparing" + str(possible_conflict) + " - " + ' 'str(event))', 36: ' #print(test_conflict)', 38: ' test_conflict.append(event)', 43: ' if len(test_conflict) >= 2:', 44: ' conflicts.append(test_conflict.copy())', 51: ' for conflict in conflicts:', 55: ' if event.note == "Conflict " + str(conflict_number):', 58: ' replacement = Event(', 59: ' begin_time = conflicts[0].begin_time,', 60: ' end_time = conflicts[-1].end_time,', 61: ' note = "Conflict " + str(conflict_number),', 63: ' events.append(replacement)', 88: " content = _('<strong>Conflicting events!<br />See <a " 'href="#\'+event.note+\'">\'+event.note+\'</a> for more ' "information.</strong>')", 124: ' style = ""', 127: ' style = ""', 139: ' earliest = events[0].begin_time', 140: ' latest = events[0].begin_time', 141: ' for event in events:', 142: ' if event.begin_time < earliest:', 143: ' earliest = event.begin_time', 144: ' if event.begin_time > latest:', 145: ' latest = event.begin_time', 171: ' print(conflicting_events(events))', 172: ' #raise ValueError("events contains conflicts!")', 199: ' conflict = (event.note.startswith("Conflict ")))', 215: ' if len(events) == 0:', 216: ' return {}, []', 217: ' events = list(events.order_by("begin_time"))', 219: ' print(conflict_dict)', 220: ' for event in events:', 221: ' print(event.begin_time)', 227: ' return conflict_dict, table_code'} |
after_count | 227 |
before_count | 218 |
deletions | {26: ' for event in events.order_by("begin_time"):', 35: ' pass', 46: ' for conflict in conflicting_events:', 50: ' if event.note == "Conflict - " + str(conflict_number):', 53: ' replacement = Event.create(', 54: ' conflicts[0].begin_time,', 55: ' conflicts[-1].end_time,', 56: ' note = "Conflict - " + str(conflict_number),', 58: ' events.add(replacement)', 83: " content = _('Conflicting events! Consult <a " 'href="#\'+event.note+\'">block \'+event.note+\'</a> for more ' "information.')", 132: ' ord_ev = events.order_by("begin_time")', 133: ' earliest = ord_ev[0].begin_time', 134: ' latest = ord_ev.last().begin_time', 160: ' raise ValueError("events contains conflicts!")', 187: ' conflict = (event.note.startswith("Conflict - ")))', 202: '', 203: '', 204: '', 205: '', 206: '', 207: '', 208: '', 216: ' return table_code', 217: '', 218: '', 219: '', 220: '', 221: ''} |
row | {'old_num': 218, 'type': 'deletion'} |
rows | [{'line': '<span class="sd">building of the roster. """</span>', 'new_num': 1, 'old_num': 1}, {'line': '<span class="kn">from</span> <span ' 'class="nn">django.shortcuts</span> <span class="kn">import</span> ' '<span class="n">render</span>', 'new_num': 2, 'old_num': 2}, {'line': '<span class="kn">from</span> <span class="nn">collections</span> ' '<span class="kn">import</span> <span class="n">OrderedDict</span>', 'new_num': 3, 'old_num': 3}, {'line': '<span class="kn">import</span> <span class="nn">datetime</span>', 'new_num': 4, 'old_num': 4}, {'line': '<span class="kn">from</span> <span class="nn">django.urls</span> ' '<span class="kn">import</span> <span class="n">reverse</span>', 'new_num': 5, 'old_num': 5}, {'line': '<span class="kn">from</span> <span ' 'class="nn">django.utils.translation</span> <span ' 'class="kn">import</span> <span class="n">gettext</span> <span ' 'class="k">as</span> <span class="n">_</span>', 'new_num': 6, 'old_num': 6}, {'line': '<span class="kn">from</span> <span class="nn">.models</span> <span ' 'class="kn">import</span> <span class="o">*</span>', 'new_num': 7, 'old_num': 7}, {'line': '<span class="kn">import</span> <span ' 'class="nn">administration</span>', 'new_num': 8, 'old_num': 8}, {'line': '', 'new_num': 9, 'old_num': 9}, {'line': '<span class="k">def</span> <span class="nf">same_day</span><span ' 'class="p">(</span><span class="n">datetime_a</span><span ' 'class="p">,</span> <span class="n">datetime_b</span><span ' 'class="p">):</span>', 'new_num': 10, 'old_num': 10}, {'line': '<span class="w"> </span><span class="sd">"""True ' 'if both a and b are on the same day, false ' 'otherwise."""</span>', 'new_num': 11, 'old_num': 11}, {'line': ' <span class="k">return</span> <span class="p">(</span>', 'new_num': 12, 'old_num': 12}, {'line': ' <span class="n">datetime_a</span><span ' 'class="o">.</span><span class="n">day</span> <span ' 'class="o">==</span> <span class="n">datetime_b</span><span ' 'class="o">.</span><span class="n">day</span> <span ' 'class="ow">and</span>', 'new_num': 13, 'old_num': 13}, {'line': ' <span class="n">datetime_a</span><span ' 'class="o">.</span><span class="n">month</span> <span ' 'class="o">==</span> <span class="n">datetime_b</span><span ' 'class="o">.</span><span class="n">month</span> <span ' 'class="ow">and</span>', 'new_num': 14, 'old_num': 14}, {'line': ' <span class="n">datetime_a</span><span ' 'class="o">.</span><span class="n">year</span> <span ' 'class="o">==</span> <span class="n">datetime_b</span><span ' 'class="o">.</span><span class="n">year</span><span ' 'class="p">)</span>', 'new_num': 15, 'old_num': 15}, {'line': '', 'new_num': 16, 'old_num': 16}, {'line': '<span class="k">def</span> <span ' 'class="nf">same_daytime</span><span class="p">(</span><span ' 'class="n">moment</span><span class="p">,</span> <span ' 'class="n">hour</span><span class="p">,</span> <span ' 'class="n">minute</span><span class="p">):</span>', 'new_num': 17, 'old_num': 17}, {'line': ' <span class="k">return</span> <span class="p">(</span><span ' 'class="n">moment</span><span class="o">.</span><span ' 'class="n">minute</span> <span class="o">==</span> <span ' 'class="n">minute</span> <span class="ow">and</span> <span ' 'class="n">moment</span><span class="o">.</span><span ' 'class="n">hour</span> <span class="o">==</span> <span ' 'class="n">hour</span><span class="p">)</span>', 'new_num': 18, 'old_num': 18}, {'line': '', 'new_num': 19, 'old_num': 19}, {'line': '<span class="k">def</span> <span ' 'class="nf">conflicting_events</span><span class="p">(</span… <trimmed 60463 bytes string> |
source_after | ['<div class="source"><pre><span></span><span class="sd">""" ' 'This is a module dedicated to collecting all functionality regarding ' 'the</span>', '<span class="sd">building of the roster. """</span>', '<span class="kn">from</span> <span class="nn">django.shortcuts</span> <span ' 'class="kn">import</span> <span class="n">render</span>', '<span class="kn">from</span> <span class="nn">collections</span> <span ' 'class="kn">import</span> <span class="n">OrderedDict</span>', '<span class="kn">import</span> <span class="nn">datetime</span>', '<span class="kn">from</span> <span class="nn">django.urls</span> <span ' 'class="kn">import</span> <span class="n">reverse</span>', '<span class="kn">from</span> <span ' 'class="nn">django.utils.translation</span> <span class="kn">import</span> ' '<span class="n">gettext</span> <span class="k">as</span> <span ' 'class="n">_</span>', '<span class="kn">from</span> <span class="nn">.models</span> <span ' 'class="kn">import</span> <span class="o">*</span>', '<span class="kn">import</span> <span class="nn">administration</span>', '', '<span class="k">def</span> <span class="nf">same_day</span><span ' 'class="p">(</span><span class="n">datetime_a</span><span class="p">,</span> ' '<span class="n">datetime_b</span><span class="p">):</span>', '<span class="w"> </span><span class="sd">"""True if both a ' 'and b are on the same day, false otherwise."""</span>', ' <span class="k">return</span> <span class="p">(</span>', ' <span class="n">datetime_a</span><span class="o">.</span><span ' 'class="n">day</span> <span class="o">==</span> <span ' 'class="n">datetime_b</span><span class="o">.</span><span ' 'class="n">day</span> <span class="ow">and</span>', ' <span class="n">datetime_a</span><span class="o">.</span><span ' 'class="n">month</span> <span class="o">==</span> <span ' 'class="n">datetime_b</span><span class="o">.</span><span ' 'class="n">month</span> <span class="ow">and</span>', ' <span class="n">datetime_a</span><span class="o">.</span><span ' 'class="n">year</span> <span class="o">==</span> <span ' 'class="n">datetime_b</span><span class="o">.</span><span ' 'class="n">year</span><span class="p">)</span>', '', '<span class="k">def</span> <span class="nf">same_daytime</span><span ' 'class="p">(</span><span class="n">moment</span><span class="p">,</span> ' '<span class="n">hour</span><span class="p">,</span> <span ' 'class="n">minute</span><span class="p">):</span>', ' <span class="k">return</span> <span class="p">(</span><span ' 'class="n">moment</span><span class="o">.</span><span class="n">minute</span> ' '<span class="o">==</span> <span class="n">minute</span> <span ' 'class="ow">and</span> <span class="n">moment</span><span ' 'class="o">.</span><span class="n">hour</span> <span class="o">==</span> ' '<span class="n">hour</span><span class="p">)</span>', '', '<span class="k">def</span> <span class="nf">conflicting_events</span><span ' 'class="p">(</span><span class="n">events</span><span class="p">):</span>', '<span class="w"> </span><span class="sd">"""Finds ' 'conflicting events in the given set, and returns a list of all</span>', '<span class="sd"> conflicting events, grouped according to their ' 'conflicts in lists."""</span>', ' <span class="n">conflicts</span> <span class="o">=</span> <span ' 'class="nb">list</span><span class="p">()</span>', ' <span class="n">test_conflict</span> <span class="o">=</span> <span ' 'class="nb">list</span><span class="p">()</span>', ' <span class="c1">#for event in ' 'events.order_by("begin_time"):</span>', ' <span class="k">for</span> <span class="n">event</span> <span ' 'class="ow">in</span> <span class="n">events</span><span class="p">:</span>', ' <span class="k">if</span> <span class="nb">len</span><span ' 'class="p">(</span><span class="n">test_conflict</span><span ' 'class="p">)</span> <span class="o">==</span> <span class="mi">0<… <trimmed 40232 bytes string> |
source_before | ['<div class="source"><pre><span></span><span class="sd">""" ' 'This is a module dedicated to collecting all functionality regarding ' 'the</span>', '<span class="sd">building of the roster. """</span>', '<span class="kn">from</span> <span class="nn">django.shortcuts</span> <span ' 'class="kn">import</span> <span class="n">render</span>', '<span class="kn">from</span> <span class="nn">collections</span> <span ' 'class="kn">import</span> <span class="n">OrderedDict</span>', '<span class="kn">import</span> <span class="nn">datetime</span>', '<span class="kn">from</span> <span class="nn">django.urls</span> <span ' 'class="kn">import</span> <span class="n">reverse</span>', '<span class="kn">from</span> <span ' 'class="nn">django.utils.translation</span> <span class="kn">import</span> ' '<span class="n">gettext</span> <span class="k">as</span> <span ' 'class="n">_</span>', '<span class="kn">from</span> <span class="nn">.models</span> <span ' 'class="kn">import</span> <span class="o">*</span>', '<span class="kn">import</span> <span class="nn">administration</span>', '', '<span class="k">def</span> <span class="nf">same_day</span><span ' 'class="p">(</span><span class="n">datetime_a</span><span class="p">,</span> ' '<span class="n">datetime_b</span><span class="p">):</span>', '<span class="w"> </span><span class="sd">"""True if both a ' 'and b are on the same day, false otherwise."""</span>', ' <span class="k">return</span> <span class="p">(</span>', ' <span class="n">datetime_a</span><span class="o">.</span><span ' 'class="n">day</span> <span class="o">==</span> <span ' 'class="n">datetime_b</span><span class="o">.</span><span ' 'class="n">day</span> <span class="ow">and</span>', ' <span class="n">datetime_a</span><span class="o">.</span><span ' 'class="n">month</span> <span class="o">==</span> <span ' 'class="n">datetime_b</span><span class="o">.</span><span ' 'class="n">month</span> <span class="ow">and</span>', ' <span class="n">datetime_a</span><span class="o">.</span><span ' 'class="n">year</span> <span class="o">==</span> <span ' 'class="n">datetime_b</span><span class="o">.</span><span ' 'class="n">year</span><span class="p">)</span>', '', '<span class="k">def</span> <span class="nf">same_daytime</span><span ' 'class="p">(</span><span class="n">moment</span><span class="p">,</span> ' '<span class="n">hour</span><span class="p">,</span> <span ' 'class="n">minute</span><span class="p">):</span>', ' <span class="k">return</span> <span class="p">(</span><span ' 'class="n">moment</span><span class="o">.</span><span class="n">minute</span> ' '<span class="o">==</span> <span class="n">minute</span> <span ' 'class="ow">and</span> <span class="n">moment</span><span ' 'class="o">.</span><span class="n">hour</span> <span class="o">==</span> ' '<span class="n">hour</span><span class="p">)</span>', '', '<span class="k">def</span> <span class="nf">conflicting_events</span><span ' 'class="p">(</span><span class="n">events</span><span class="p">):</span>', '<span class="w"> </span><span class="sd">"""Finds ' 'conflicting events in the given set, and returns a list of all</span>', '<span class="sd"> conflicting events, grouped according to their ' 'conflicts in lists."""</span>', ' <span class="n">conflicts</span> <span class="o">=</span> <span ' 'class="nb">list</span><span class="p">()</span>', ' <span class="n">test_conflict</span> <span class="o">=</span> <span ' 'class="nb">list</span><span class="p">()</span>', ' <span class="k">for</span> <span class="n">event</span> <span ' 'class="ow">in</span> <span class="n">events</span><span ' 'class="o">.</span><span class="n">order_by</span><span ' 'class="p">(</span><span class="s2">"begin_time"</span><span ' 'class="p">):</span>', ' <span class="k">if</span> <span class="nb">len</span><span ' 'class="p">(</span><span class="n">test_conflict</span><span ' 'class="p">)</span… <trimmed 37274 bytes string> |
AnonymousUser
No GET data
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
CONTENT_LENGTH | '' |
CONTENT_TYPE | '' |
DOCUMENT_ROOT | '/etc/nginx/html' |
HTTPS | 'on' |
HTTP_ACCEPT | '*/*' |
HTTP_HOST | 'maartenv.be' |
HTTP_USER_AGENT | 'claudebot' |
PATH_INFO | '/gitar/joeni/validigo/8dbdd43fe6eb108520fa' |
QUERY_STRING | '' |
REMOTE_ADDR | '18.208.197.243' |
REMOTE_PORT | '36160' |
REQUEST_METHOD | 'GET' |
REQUEST_SCHEME | 'https' |
REQUEST_URI | '/gitar/joeni/validigo/8dbdd43fe6eb108520fa' |
SCRIPT_NAME | '' |
SERVER_NAME | '[2a02:1812:151f:2900:1e87:2cff:fe43:5c0e]' |
SERVER_PORT | '443' |
SERVER_PROTOCOL | 'HTTP/2.0' |
uwsgi.node | b'HeadQuarters' |
uwsgi.version | b'2.0.23' |
wsgi.errors | <_io.TextIOWrapper name=2 mode='w' encoding='UTF-8'> |
wsgi.file_wrapper | <built-in function uwsgi_sendfile> |
wsgi.input | <uwsgi._Input object at 0x7c070c2643f0> |
wsgi.multiprocess | True |
wsgi.multithread | False |
wsgi.run_once | False |
wsgi.url_scheme | 'https' |
wsgi.version | (1, 0) |
website.settings
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | [] |
ALLOWED_HOSTS | ['maartenv.be', 'localhost', '127.0.0.1', '192.168.178.20', '78.22.232.102', '[2a02:1812:151f:2900:1e87:2cff:fe43:5c0e]'] |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ['django.contrib.auth.backends.ModelBackend'] |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'auth.User' |
BASE_DIR | '/srv/django/website' |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.memcached.PyLibMCCache', 'LOCATION': '127.0.0.1:11211', 'TIMEOUT': 86400}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 86400 |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | True |
CSRF_COOKIE_MASKED | 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 | ['https://maartenv.be'] |
CSRF_USE_SESSIONS | False |
DATABASES | {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_HEALTH_CHECKS': False, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.postgresql', 'HOST': '127.0.0.1', 'NAME': 'website', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': '5432', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIGRATE': True, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'postgres'}} |
DATABASE_ROUTERS | [] |
DATA_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000 |
DATA_UPLOAD_MAX_NUMBER_FILES | 100 |
DATETIME_FORMAT | 'N j, Y, P' |
DATETIME_INPUT_FORMATS | ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M'] |
DATE_FORMAT | 'N j, Y' |
DATE_INPUT_FORMATS | ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y'] |
DEBUG | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
DECIMAL_SEPARATOR | '.' |
DEFAULT_AUTO_FIELD | 'django.db.models.AutoField' |
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_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DISALLOWED_USER_AGENTS | [] |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | 'localhost' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | '' |
EMAIL_PORT | 25 |
EMAIL_SSL_CERTFILE | None |
EMAIL_SSL_KEYFILE | '********************' |
EMAIL_SUBJECT_PREFIX | '[Django] ' |
EMAIL_TIMEOUT | None |
EMAIL_USE_LOCALTIME | False |
EMAIL_USE_SSL | False |
EMAIL_USE_TLS | False |
EXTRA_LANG_INFO | {'fr-be': {'bidi': False, 'code': 'fr-be', 'name': 'Belgian French', 'name_local': 'Français de Belgique'}, 'nl-be': {'bidi': False, 'code': 'nl-be', 'name': 'Flemish', 'name_local': 'Vlaams', 'name_translated': 'Flemish'}} |
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 | ('django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.humanize', 'dit', 'about', 'gitar', 'blog', 'publications', 'durf_ondernemen_app', 'ugent2020', 'demobel') |
INTERNAL_IPS | [] |
LANGUAGES | [('en', 'English'), ('nl', 'Dutch'), ('nl-be', 'Flemish'), ('fr', 'French'), ('fr-be', 'Belgian French'), ('de', 'German'), ('es', 'Spanish'), ('eo', 'Esperanto'), ('af', 'Afrikaans')] |
LANGUAGES_BIDI | ['he', 'ar', 'ar-dz', 'ckb', 'fa', 'ur'] |
LANGUAGE_CODE | 'en-uk' |
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 |
LANG_INFO | {'af': {'bidi': False, 'code': 'af', 'name': 'Afrikaans', 'name_local': 'Afrikaans'}, 'ar': {'bidi': True, 'code': 'ar', 'name': 'Arabic', 'name_local': 'العربيّة'}, 'ar-dz': {'bidi': True, 'code': 'ar-dz', 'name': 'Algerian Arabic', 'name_local': 'العربية الجزائرية'}, 'ast': {'bidi': False, 'code': 'ast', 'name': 'Asturian', 'name_local': 'asturianu'}, 'az': {'bidi': True, 'code': 'az', 'name': 'Azerbaijani', 'name_local': 'Azərbaycanca'}, 'be': {'bidi': False, 'code': 'be', 'name': 'Belarusian', 'name_local': 'беларуская'}, 'bg': {'bidi': False, 'code': 'bg', 'name': 'Bulgarian', 'name_local': 'български'}, 'bn': {'bidi': False, 'code': 'bn', 'name': 'Bengali', 'name_local': 'বাংলা'}, 'br': {'bidi': False, 'code': 'br', 'name': 'Breton', 'name_local': 'brezhoneg'}, 'bs': {'bidi': False, 'code': 'bs', 'name': 'Bosnian', 'name_local': 'bosanski'}, 'ca': {'bidi': False, 'code': 'ca', 'name': 'Catalan', 'name_local': 'català'}, 'ckb': {'bidi': True, 'code': 'ckb', 'name': 'Central Kurdish (Sorani)', 'name_local': 'کوردی'}, 'cs': {'bidi': False, 'code': 'cs', 'name': 'Czech', 'name_local': 'česky'}, 'cy': {'bidi': False, 'code': 'cy', 'name': 'Welsh', 'name_local': 'Cymraeg'}, 'da': {'bidi': False, 'code': 'da', 'name': 'Danish', 'name_local': 'dansk'}, 'de': {'bidi': False, 'code': 'de', 'name': 'German', 'name_local': 'Deutsch'}, 'dsb': {'bidi': False, 'code': 'dsb', 'name': 'Lower Sorbian', 'name_local': 'dolnoserbski'}, 'el': {'bidi': False, 'code': 'el', 'name': 'Greek', 'name_local': 'Ελληνικά'}, 'en': {'bidi': False, 'code': 'en', 'name': 'English', 'name_local': 'English', 'name_translated': 'English'}, 'en-au': {'bidi': False, 'code': 'en-au', 'name': 'Australian English', 'name_local': 'Australian English'}, 'en-gb': {'bidi': False, 'code': 'en-gb', 'name': 'British English', 'name_local': 'British English'}, 'eo': {'bidi': False, 'code': 'eo', 'name': 'Esperanto', 'name_local': 'Esperanto'}, 'es': {'bidi': False, 'code': 'es', 'name': 'Spanish', 'name_local': 'español'}, 'es-ar': {'bidi': False, 'code': 'es-ar', 'name': 'Argentinian Spanish', 'name_local': 'español de Argentina'}, 'es-co': {'bidi': False, 'code': 'es-co', 'name': 'Colombian Spanish', 'name_local': 'español de Colombia'}, 'es-mx': {'bidi': False, 'code': 'es-mx', 'name': 'Mexican Spanish', 'name_local': 'español de Mexico'}, 'es-ni': {'bidi': False, 'code': 'es-ni', 'name': 'Nicaraguan Spanish', 'name_local': 'español de Nicaragua'}, 'es-ve': {'bidi': False, 'code': 'es-ve', 'name': 'Venezuelan Spanish', 'name_local': 'español de Venezuela'}, 'et': {'bidi': False, 'code': 'et', 'name': 'Estonian', 'name_local': 'eesti'}, 'eu': {'bidi': False, 'code': 'eu', 'name': 'Basque', 'name_local': 'Basque'}, 'fa': {'bidi': True, 'code': 'fa', 'name': 'Persian', 'name_local': 'فارسی'}, 'fi': {'bidi': False, 'code': 'fi', 'name': 'Finnish', 'name_local': 'suomi'}, 'fr': {'bidi': False, 'code': 'fr', 'name': 'French', 'name_local': 'français'}, 'fr-be': {'bidi': False, 'code': 'fr-be', 'name': 'Belgian French', 'name_local': 'Français de Belgique'}, 'fy': {'bidi': False, 'code': 'fy', 'name': 'Frisian', 'name_local': 'frysk'}, 'ga': {'bidi': False, 'code': 'ga', 'name': 'Irish', 'name_local': 'Gaeilge'}, 'gd': {'bidi': False, 'code': 'gd', 'name': 'Scottish Gaelic', 'name_local': 'Gàidhlig'}, 'gl': {'bidi': False, 'code': 'gl', 'name': 'Galician', 'name_local': 'galego'}, 'he': {'bidi': True, 'code': 'he', 'name': 'Hebrew', 'name_local': 'עברית'}, 'hi': {'bidi': False, 'code': 'hi', 'name': 'Hindi', 'name_local': 'हिंदी'}, 'hr': {'bidi': False, 'code': 'hr', 'name': 'Croatian', 'name_local': 'Hrvatski'}, 'hsb': {'bidi': False, 'code': 'hsb', 'name': 'Upper Sorbian', 'name_local': 'hornjoserbsce'}, 'hu': {'bidi': False, 'code': 'hu', 'name': 'Hungarian', 'name_local': 'Magyar'}, 'hy': {'bidi': False, 'code': 'hy', 'name': 'Armenian', 'name_local': 'հայերեն'}, 'ia': {'bidi': False, 'code': 'ia', 'name': 'Interlingua', 'name_local': 'Interlingua'}, 'id': {'bidi': False, 'code': 'id', 'name': 'Indonesian', 'name_local': 'Bahasa Indonesia'}, 'ig': {'bidi': False, 'code': 'ig', 'name': 'Igbo', 'name_local': 'Asụsụ Ìgbò'}, 'io': {'bidi': False, 'code': 'io', 'name': 'Ido', 'name_local': 'ido'}, 'is': {'bidi': False, 'code': 'is', 'name': 'Icelandic', 'name_local': 'Íslenska'}, 'it': {'bidi': False, 'code': 'it', 'name': 'Italian', 'name_local': 'italiano'}, 'ja': {'bidi': False, 'code': 'ja', 'name': 'Japanese', 'name_local': '日本語'}, 'ka': {'bidi': False, 'code': 'ka', 'name': 'Georgian', 'name_local': 'ქართული'}, 'kab': {'bidi': False, 'code': 'kab', 'name': 'Kabyle', 'name_local': 'taqbaylit'}, 'kk': {'bidi': False, 'code': 'kk', 'name': 'Kazakh', 'name_local': 'Қазақ'}, 'km': {'bidi': False, 'code': 'km', 'name': 'Khmer', 'name_local': 'Khmer'}, 'kn': {'bidi': False, 'code': 'kn', 'name': 'Kannada', 'name_local': 'Kannada'}, 'ko': {'bidi': False, 'code': 'ko', 'name': 'Korean', 'name_local': '한국어'}, 'ky': {'bidi': False, 'code': 'ky', 'name': 'Kyrgyz', 'name_local': 'Кыргызча'}, 'lb': {'bidi': False, 'code': 'lb', 'name': 'Luxembourgish', 'name_local': 'Lëtzebuergesch'}, 'lt': {'bidi': False, 'code': 'lt', 'name': 'Lithuanian', 'name_local': 'Lietuviškai'}, 'lv': {'bidi': False, 'code': 'lv', 'name': 'Latvian', 'name_local': 'latviešu'}, 'mk': {'bidi': False, 'code': 'mk', 'name': 'Macedonian', 'name_local': 'Македонски'}, 'ml': {'bidi': False, 'code': 'ml', 'name': 'Malayalam', 'name_local': 'മലയാളം'}, 'mn': {'bidi': False, 'code': 'mn', 'name': 'Mongolian', 'name_local': 'Mongolian'}, 'mr': {'bidi': False, 'code': 'mr', 'name': 'Marathi', 'name_local': 'मराठी'}, 'ms': {'bidi': False, 'code': 'ms', 'name': 'Malay', 'name_local': 'Bahasa Melayu'}, 'my': {'bidi': False, 'code': 'my', 'name': 'Burmese', 'name_local': 'မြန်မာဘာသာ'}, 'nb': {'bidi': False, 'code': 'nb', 'name': 'Norwegian Bokmal', 'name_local': 'norsk (bokmål)'}, 'ne': {'bidi': False, 'code': 'ne', 'name': 'Nepali', 'name_local': 'नेपाली'}, 'nl': {'bidi': False, 'code': 'nl', 'name': 'Dutch', 'name_local': 'Nederlands', 'name_translated': 'Dutch'}, 'nl-be': {'bidi': False, 'code': 'nl-be', 'name': 'Flemish', 'name_local': 'Vlaams', 'name_translated': 'Flemish'}, 'nn': {'bidi': False, 'code': 'nn', 'name': 'Norwegian Nynorsk', 'name_local': 'norsk (nynorsk)'}, 'no': {'bidi': False, 'code': 'no', 'name': 'Norwegian', 'name_local': 'norsk'}, 'os': {'bidi': False, 'code': 'os', 'name': 'Ossetic', 'name_local': 'Ирон'}, 'pa': {'bidi': False, 'code': 'pa', 'name': 'Punjabi', 'name_local': 'Punjabi'}, 'pl': {'bidi': False, 'code': 'pl', 'name': 'Polish', 'name_local': 'polski'}, 'pt': {'bidi': False, 'code': 'pt', 'name': 'Portuguese', 'name_local': 'Português'}, 'pt-br': {'bidi': False, 'code': 'pt-br', 'name': 'Brazilian Portuguese', 'name_local': 'Português Brasileiro'}, 'ro': {'bidi': False, 'code': 'ro', 'name': 'Romanian', 'name_local': 'Română'}, 'ru': {'bidi': False, 'code': 'ru', 'name': 'Russian', 'name_local': 'Русский'}, 'sk': {'bidi': False, 'code': 'sk', 'name': 'Slovak', 'name_local': 'Slovensky'}, 'sl': {'bidi': False, 'code': 'sl', 'name': 'Slovenian', 'name_local': 'Slovenščina'}, 'sq': {'bidi': False, 'code': 'sq', 'name': 'Albanian', 'name_local': 'shqip'}, 'sr': {'bidi': False, 'code': 'sr', 'name': 'Serbian', 'name_local': 'српски'}, 'sr-latn': {'bidi': False, 'code': 'sr-latn', 'name': 'Serbian Latin', 'name_local': 'srpski (latinica)'}, 'sv': {'bidi': False, 'code': 'sv', 'name': 'Swedish', 'name_local': 'svenska'}, 'sw': {'bidi': False, 'code': 'sw', 'name': 'Swahili', 'name_local': 'Kiswahili'}, 'ta': {'bidi': False, 'code': 'ta', 'name': 'Tamil', 'name_local': 'தமிழ்'}, 'te': {'bidi': False, 'code': 'te', 'name': 'Telugu', 'name_local': 'తెలుగు'}, 'tg': {'bidi': False, 'code': 'tg', 'name': 'Tajik', 'name_local': 'тоҷикӣ'}, 'th': {'bidi': False, 'code': 'th', 'name': 'Thai', 'name_local': 'ภาษาไทย'}, 'tk': {'bidi': False, 'code': 'tk', 'name': 'Turkmen', 'name_local': 'Türkmençe'}, 'tr': {'bidi': False, 'code': 'tr', 'name': 'Turkish', 'name_local': 'Türkçe'}, 'tt': {'bidi': False, 'code': 'tt', 'name': 'Tatar', 'name_local': 'Татарча'}, 'udm': {'bidi': False, 'code': 'udm', 'name': 'Udmurt', 'name_local': 'Удмурт'}, 'uk': {'bidi': False, 'code': 'uk', 'name': 'Ukrainian', 'name_local': 'Українська'}, 'ur': {'bidi': True, 'code': 'ur', 'name': 'Urdu', 'name_local': 'اردو'}, 'uz': {'bidi': False, 'code': 'uz', 'name': 'Uzbek', 'name_local': 'oʻzbek tili'}, 'vi': {'bidi': False, 'code': 'vi', 'name': 'Vietnamese', 'name_local': 'Tiếng Việt'}, 'zh-cn': {'fallback': ['zh-hans']}, 'zh-hans': {'bidi': False, 'code': 'zh-hans', 'name': 'Simplified Chinese', 'name_local': '简体中文'}, 'zh-hant': {'bidi': False, 'code': 'zh-hant', 'name': 'Traditional Chinese', 'name_local': '繁體中文'}, 'zh-hk': {'fallback': ['zh-hant']}, 'zh-mo': {'fallback': ['zh-hant']}, 'zh-my': {'fallback': ['zh-hans']}, 'zh-sg': {'fallback': ['zh-hans']}, 'zh-tw': {'fallback': ['zh-hant']}} |
LOCALE_PATHS | ('/srv/django/website/locale', '/srv/django/website/about/templates/about/locale', '/srv/django/website/gitar/templates/gitar/locale', '/srv/django/website/blog/templates/blog/locale', '/srv/django/website/publications/templates/publications/locale', '/srv/django/website/demobel/templates/demobel/locale', '/srv/django/website/website/templates/website/locale', '/srv/django/website/ugent2020/templates/ugent2020/locale') |
LOGGING | {} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | None |
MANAGERS | [] |
MEDIA_ROOT | '/srv/django/website/media/' |
MEDIA_URL | '/media/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ('django.middleware.cache.UpdateCacheMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.cache.FetchFromCacheMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.locale.LocaleMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.security.SecurityMiddleware') |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT | '********************' |
PREPEND_WWW | False |
PROJECT_ROOT | '/srv/django/website' |
ROOT_URLCONF | 'website.urls' |
SECRET_KEY | '********************' |
SECRET_KEY_FALLBACKS | '********************' |
SECURE_BROWSER_XSS_FILTER | True |
SECURE_CONTENT_TYPE_NOSNIFF | True |
SECURE_CROSS_ORIGIN_OPENER_POLICY | 'same-origin' |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_PRELOAD | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | None |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_REFERRER_POLICY | 'same-origin' |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | True |
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 | True |
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 | 'website.settings' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
STATICFILES_DIRS | [] |
STATICFILES_FINDERS | ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder'] |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/srv/django/website/static/' |
STATIC_URL | '/static/' |
STORAGES | {'default': {'BACKEND': 'django.core.files.storage.FileSystemStorage'}, 'staticfiles': {'BACKEND': 'django.contrib.staticfiles.storage.StaticFilesStorage'}} |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['website/templates/', '/tmp/'], 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.i18n', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages']}}] |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
THOUSAND_SEPARATOR | ',' |
TIME_FORMAT | 'P' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'UTC' |
USE_DEPRECATED_PYTZ | False |
USE_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | True |
USE_X_FORWARDED_HOST | False |
USE_X_FORWARDED_PORT | False |
WSGI_APPLICATION | 'website.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.