Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html lang="en"><head>
- <meta http-equiv="content-type" content="text/html; charset=UTF-8">
- <meta name="robots" content="NONE,NOARCHIVE">
- <title>ProgrammingError
- at /admin/login/</title>
- <style type="text/css">
- html * { padding:0; margin:0; }
- body * { padding:10px 20px; }
- body * * { padding:0; }
- body { font:small sans-serif; background-color:#fff; color:#000; }
- body>div { border-bottom:1px solid #ddd; }
- h1 { font-weight:normal; }
- h2 { margin-bottom:.8em; }
- h3 { margin:1em 0 .5em 0; }
- h4 { margin:0 0 .5em 0; font-weight: normal; }
- code, pre { font-size: 100%; white-space: pre-wrap; }
- table { border:1px solid #ccc; border-collapse: collapse; width:100%; background:white; }
- tbody td, tbody th { vertical-align:top; padding:2px 3px; }
- thead th {
- padding:1px 6px 1px 3px; background:#fefefe; text-align:left;
- font-weight:normal; font-size:11px; border:1px solid #ddd;
- }
- tbody th { width:12em; text-align:right; color:#666; padding-right:.5em; }
- table.vars { margin:5px 0 2px 40px; }
- table.vars td, table.req td { font-family:monospace; }
- table td.code { width:100%; }
- table td.code pre { overflow:hidden; }
- table.source th { color:#666; }
- table.source td { font-family:monospace; white-space:pre; border-bottom:1px solid #eee; }
- ul.traceback { list-style-type:none; color: #222; }
- ul.traceback li.frame { padding-bottom:1em; color:#4f4f4f; }
- ul.traceback li.user { background-color:#e0e0e0; color:#000 }
- div.context { padding:10px 0; overflow:hidden; }
- div.context ol { padding-left:30px; margin:0 10px; list-style-position: inside; }
- div.context ol li { font-family:monospace; white-space:pre; color:#777; cursor:pointer; padding-left: 2px; }
- div.context ol li pre { display:inline; }
- div.context ol.context-line li { color:#464646; background-color:#dfdfdf; padding: 3px 2px; }
- div.context ol.context-line li span { position:absolute; right:32px; }
- .user div.context ol.context-line li { background-color:#bbb; color:#000; }
- .user div.context ol li { color:#666; }
- div.commands { margin-left: 40px; }
- div.commands a { color:#555; text-decoration:none; }
- .user div.commands a { color: black; }
- #summary { background: #ffc; }
- #summary h2 { font-weight: normal; color: #666; }
- #explanation { background:#eee; }
- #template, #template-not-exist { background:#f6f6f6; }
- #template-not-exist ul { margin: 0 0 10px 20px; }
- #template-not-exist .postmortem-section { margin-bottom: 3px; }
- #unicode-hint { background:#eee; }
- #traceback { background:#eee; }
- #requestinfo { background:#f6f6f6; padding-left:120px; }
- #summary table { border:none; background:transparent; }
- #requestinfo h2, #requestinfo h3 { position:relative; margin-left:-100px; }
- #requestinfo h3 { margin-bottom:-1em; }
- .error { background: #ffc; }
- .specific { color:#cc3300; font-weight:bold; }
- h2 span.commands { font-size:.7em; font-weight:normal; }
- span.commands a:link {color:#5E5694;}
- pre.exception_value { font-family: sans-serif; color: #575757; font-size: 1.5em; margin: 10px 0 10px 0; }
- .append-bottom { margin-bottom: 10px; }
- </style>
- <script type="text/javascript">
- function hideAll(elems) {
- for (var e = 0; e < elems.length; e++) {
- elems[e].style.display = 'none';
- }
- }
- window.onload = function() {
- hideAll(document.querySelectorAll('table.vars'));
- hideAll(document.querySelectorAll('ol.pre-context'));
- hideAll(document.querySelectorAll('ol.post-context'));
- hideAll(document.querySelectorAll('div.pastebin'));
- }
- function toggle() {
- for (var i = 0; i < arguments.length; i++) {
- var e = document.getElementById(arguments[i]);
- if (e) {
- e.style.display = e.style.display == 'none' ? 'block': 'none';
- }
- }
- return false;
- }
- function varToggle(link, id) {
- toggle('v' + id);
- var s = link.getElementsByTagName('span')[0];
- var uarr = String.fromCharCode(0x25b6);
- var darr = String.fromCharCode(0x25bc);
- s.textContent = s.textContent == uarr ? darr : uarr;
- return false;
- }
- function switchPastebinFriendly(link) {
- s1 = "Switch to copy-and-paste view";
- s2 = "Switch back to interactive view";
- link.textContent = link.textContent.trim() == s1 ? s2: s1;
- toggle('browserTraceback', 'pastebinTraceback');
- return false;
- }
- </script>
- </head>
- <body>
- <div id="summary">
- <h1>ProgrammingError
- at /admin/login/</h1>
- <pre class="exception_value">relation "auth_user" does not exist
- LINE 1: ...user"."is_active", "auth_user"."date_joined" FROM "auth_user...
- ^
- </pre>
- <table class="meta">
- <tbody><tr>
- <th>Request Method:</th>
- <td>POST</td>
- </tr>
- <tr>
- <th>Request URL:</th>
- <td>http://142.93.190.67/admin/login/?next=/admin/</td>
- </tr>
- <tr>
- <th>Django Version:</th>
- <td>2.2.12</td>
- </tr>
- <tr>
- <th>Exception Type:</th>
- <td>ProgrammingError</td>
- </tr>
- <tr>
- <th>Exception Value:</th>
- <td><pre>relation "auth_user" does not exist
- LINE 1: ...user"."is_active", "auth_user"."date_joined" FROM "auth_user...
- ^
- </pre></td>
- </tr>
- <tr>
- <th>Exception Location:</th>
- <td>/usr/lib/python3/dist-packages/django/db/backends/utils.py in _execute, line 84</td>
- </tr>
- <tr>
- <th>Python Executable:</th>
- <td>/usr/bin/python3</td>
- </tr>
- <tr>
- <th>Python Version:</th>
- <td>3.8.2</td>
- </tr>
- <tr>
- <th>Python Path:</th>
- <td><pre>['/home/django/django_project',
- '/usr/bin',
- '/usr/lib/python38.zip',
- '/usr/lib/python3.8',
- '/usr/lib/python3.8/lib-dynload',
- '/usr/local/lib/python3.8/dist-packages',
- '/usr/lib/python3/dist-packages']</pre></td>
- </tr>
- <tr>
- <th>Server time:</th>
- <td>Thu, 3 Sep 2020 19:49:33 +0000</td>
- </tr>
- </tbody></table>
- </div>
- <div id="traceback">
- <h2>Traceback <span class="commands"><a href="#" onclick="return switchPastebinFriendly(this);">
- Switch to copy-and-paste view</a></span>
- </h2>
- <div id="browserTraceback">
- <ul class="traceback">
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/db/backends/utils.py</code> in <code>_execute</code>
- <div class="context" id="c140549612777728">
- <ol class="pre-context" id="pre140549612777728" style="display: none;" start="77">
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre></pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> def _execute(self, sql, params, *ignored_wrapper_args):</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> self.db.validate_no_broken_transaction()</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> with self.db.wrap_database_errors:</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> if params is None:</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> return self.cursor.execute(sql)</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> else:</pre></li>
- </ol>
- <ol class="context-line" start="84">
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> return self.cursor.execute(sql, params)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612777728" style="display: none;" start="85">
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre></pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> def _executemany(self, sql, param_list, *ignored_wrapper_args):</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> self.db.validate_no_broken_transaction()</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> with self.db.wrap_database_errors:</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> return self.cursor.executemany(sql, param_list)</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre></pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612777728')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612777728" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>ignored_wrapper_args</td>
- <td class="code"><pre>(False,
- {'connection': <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7fd441ceaa60>,
- 'cursor': <django.db.backends.utils.CursorDebugWrapper object at 0x7fd441bcffd0>})</pre></td>
- </tr>
- <tr>
- <td>params</td>
- <td class="code"><pre>('django',)</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.db.backends.utils.CursorDebugWrapper object at 0x7fd441bcffd0></pre></td>
- </tr>
- <tr>
- <td>sql</td>
- <td class="code"><pre>('SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", '
- '"auth_user"."is_superuser", "auth_user"."username", '
- '"auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", '
- '"auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" '
- 'FROM "auth_user" WHERE "auth_user"."username" = %s')</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li><h3>
- The above exception (relation "auth_user" does not exist
- LINE 1: ...user"."is_active", "auth_user"."date_joined" FROM "auth_user...
- ^
- ) was the direct cause of the following exception:
- </h3></li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/core/handlers/exception.py</code> in <code>inner</code>
- <div class="context" id="c140549612780224">
- <ol class="pre-context" id="pre140549612780224" style="display: none;" start="27">
- <li onclick="toggle('pre140549612780224', 'post140549612780224')"><pre> This decorator is automatically applied to all middleware to ensure that</pre></li>
- <li onclick="toggle('pre140549612780224', 'post140549612780224')"><pre> no middleware leaks an exception and that the next middleware in the stack</pre></li>
- <li onclick="toggle('pre140549612780224', 'post140549612780224')"><pre> can rely on getting a response instead of an exception.</pre></li>
- <li onclick="toggle('pre140549612780224', 'post140549612780224')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612780224', 'post140549612780224')"><pre> @wraps(get_response)</pre></li>
- <li onclick="toggle('pre140549612780224', 'post140549612780224')"><pre> def inner(request):</pre></li>
- <li onclick="toggle('pre140549612780224', 'post140549612780224')"><pre> try:</pre></li>
- </ol>
- <ol class="context-line" start="34">
- <li onclick="toggle('pre140549612780224', 'post140549612780224')"><pre> response = get_response(request)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612780224" style="display: none;" start="35">
- <li onclick="toggle('pre140549612780224', 'post140549612780224')"><pre> except Exception as exc:</pre></li>
- <li onclick="toggle('pre140549612780224', 'post140549612780224')"><pre> response = response_for_exception(request, exc)</pre></li>
- <li onclick="toggle('pre140549612780224', 'post140549612780224')"><pre> return response</pre></li>
- <li onclick="toggle('pre140549612780224', 'post140549612780224')"><pre> return inner</pre></li>
- <li onclick="toggle('pre140549612780224', 'post140549612780224')"><pre></pre></li>
- <li onclick="toggle('pre140549612780224', 'post140549612780224')"><pre></pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612780224')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612780224" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>exc</td>
- <td class="code"><pre>ProgrammingError('relation "auth_user" does not exist\nLINE 1: ...user"."is_active", "auth_user"."date_joined" FROM "auth_user...\n ^\n')</pre></td>
- </tr>
- <tr>
- <td>get_response</td>
- <td class="code"><pre><bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7fd442c58460>></pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><WSGIRequest: POST '/admin/login/?next=/admin/'></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/core/handlers/base.py</code> in <code>_get_response</code>
- <div class="context" id="c140549612780160">
- <ol class="pre-context" id="pre140549612780160" style="display: none;" start="108">
- <li onclick="toggle('pre140549612780160', 'post140549612780160')"><pre> break</pre></li>
- <li onclick="toggle('pre140549612780160', 'post140549612780160')"><pre></pre></li>
- <li onclick="toggle('pre140549612780160', 'post140549612780160')"><pre> if response is None:</pre></li>
- <li onclick="toggle('pre140549612780160', 'post140549612780160')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
- <li onclick="toggle('pre140549612780160', 'post140549612780160')"><pre> try:</pre></li>
- <li onclick="toggle('pre140549612780160', 'post140549612780160')"><pre> response = wrapped_callback(request, *callback_args, **callback_kwargs)</pre></li>
- <li onclick="toggle('pre140549612780160', 'post140549612780160')"><pre> except Exception as e:</pre></li>
- </ol>
- <ol class="context-line" start="115">
- <li onclick="toggle('pre140549612780160', 'post140549612780160')"><pre> response = self.process_exception_by_middleware(e, request)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612780160" style="display: none;" start="116">
- <li onclick="toggle('pre140549612780160', 'post140549612780160')"><pre></pre></li>
- <li onclick="toggle('pre140549612780160', 'post140549612780160')"><pre> # Complain if the view returned None (a common error).</pre></li>
- <li onclick="toggle('pre140549612780160', 'post140549612780160')"><pre> if response is None:</pre></li>
- <li onclick="toggle('pre140549612780160', 'post140549612780160')"><pre> if isinstance(callback, types.FunctionType): # FBV</pre></li>
- <li onclick="toggle('pre140549612780160', 'post140549612780160')"><pre> view_name = callback.__name__</pre></li>
- <li onclick="toggle('pre140549612780160', 'post140549612780160')"><pre> else: # CBV</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612780160')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612780160" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>callback</td>
- <td class="code"><pre><bound method AdminSite.login of <django.contrib.admin.sites.AdminSite object at 0x7fd442b8fe80>></pre></td>
- </tr>
- <tr>
- <td>callback_args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>callback_kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>middleware_method</td>
- <td class="code"><pre><bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7fd441cc8670>></pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><WSGIRequest: POST '/admin/login/?next=/admin/'></pre></td>
- </tr>
- <tr>
- <td>resolver</td>
- <td class="code"><pre><URLResolver 'django_project.urls' (None:None) '^/'></pre></td>
- </tr>
- <tr>
- <td>resolver_match</td>
- <td class="code"><pre>ResolverMatch(func=django.contrib.admin.sites.login, args=(), kwargs={}, url_name=login, app_names=['admin'], namespaces=['admin'], route=admin/login/)</pre></td>
- </tr>
- <tr>
- <td>response</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.core.handlers.wsgi.WSGIHandler object at 0x7fd442c58460></pre></td>
- </tr>
- <tr>
- <td>wrapped_callback</td>
- <td class="code"><pre><bound method AdminSite.login of <django.contrib.admin.sites.AdminSite object at 0x7fd442b8fe80>></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/core/handlers/base.py</code> in <code>_get_response</code>
- <div class="context" id="c140549612780096">
- <ol class="pre-context" id="pre140549612780096" style="display: none;" start="106">
- <li onclick="toggle('pre140549612780096', 'post140549612780096')"><pre> response = middleware_method(request, callback, callback_args, callback_kwargs)</pre></li>
- <li onclick="toggle('pre140549612780096', 'post140549612780096')"><pre> if response:</pre></li>
- <li onclick="toggle('pre140549612780096', 'post140549612780096')"><pre> break</pre></li>
- <li onclick="toggle('pre140549612780096', 'post140549612780096')"><pre></pre></li>
- <li onclick="toggle('pre140549612780096', 'post140549612780096')"><pre> if response is None:</pre></li>
- <li onclick="toggle('pre140549612780096', 'post140549612780096')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
- <li onclick="toggle('pre140549612780096', 'post140549612780096')"><pre> try:</pre></li>
- </ol>
- <ol class="context-line" start="113">
- <li onclick="toggle('pre140549612780096', 'post140549612780096')"><pre> response = wrapped_callback(request, *callback_args, **callback_kwargs)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612780096" style="display: none;" start="114">
- <li onclick="toggle('pre140549612780096', 'post140549612780096')"><pre> except Exception as e:</pre></li>
- <li onclick="toggle('pre140549612780096', 'post140549612780096')"><pre> response = self.process_exception_by_middleware(e, request)</pre></li>
- <li onclick="toggle('pre140549612780096', 'post140549612780096')"><pre></pre></li>
- <li onclick="toggle('pre140549612780096', 'post140549612780096')"><pre> # Complain if the view returned None (a common error).</pre></li>
- <li onclick="toggle('pre140549612780096', 'post140549612780096')"><pre> if response is None:</pre></li>
- <li onclick="toggle('pre140549612780096', 'post140549612780096')"><pre> if isinstance(callback, types.FunctionType): # FBV</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612780096')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612780096" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>callback</td>
- <td class="code"><pre><bound method AdminSite.login of <django.contrib.admin.sites.AdminSite object at 0x7fd442b8fe80>></pre></td>
- </tr>
- <tr>
- <td>callback_args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>callback_kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>middleware_method</td>
- <td class="code"><pre><bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7fd441cc8670>></pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><WSGIRequest: POST '/admin/login/?next=/admin/'></pre></td>
- </tr>
- <tr>
- <td>resolver</td>
- <td class="code"><pre><URLResolver 'django_project.urls' (None:None) '^/'></pre></td>
- </tr>
- <tr>
- <td>resolver_match</td>
- <td class="code"><pre>ResolverMatch(func=django.contrib.admin.sites.login, args=(), kwargs={}, url_name=login, app_names=['admin'], namespaces=['admin'], route=admin/login/)</pre></td>
- </tr>
- <tr>
- <td>response</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.core.handlers.wsgi.WSGIHandler object at 0x7fd442c58460></pre></td>
- </tr>
- <tr>
- <td>wrapped_callback</td>
- <td class="code"><pre><bound method AdminSite.login of <django.contrib.admin.sites.AdminSite object at 0x7fd442b8fe80>></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/views/decorators/cache.py</code> in <code>_wrapped_view_func</code>
- <div class="context" id="c140549612780032">
- <ol class="pre-context" id="pre140549612780032" style="display: none;" start="37">
- <li onclick="toggle('pre140549612780032', 'post140549612780032')"><pre></pre></li>
- <li onclick="toggle('pre140549612780032', 'post140549612780032')"><pre>def never_cache(view_func):</pre></li>
- <li onclick="toggle('pre140549612780032', 'post140549612780032')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612780032', 'post140549612780032')"><pre> Decorator that adds headers to a response so that it will never be cached.</pre></li>
- <li onclick="toggle('pre140549612780032', 'post140549612780032')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612780032', 'post140549612780032')"><pre> @wraps(view_func)</pre></li>
- <li onclick="toggle('pre140549612780032', 'post140549612780032')"><pre> def _wrapped_view_func(request, *args, **kwargs):</pre></li>
- </ol>
- <ol class="context-line" start="44">
- <li onclick="toggle('pre140549612780032', 'post140549612780032')"><pre> response = view_func(request, *args, **kwargs)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612780032" style="display: none;" start="45">
- <li onclick="toggle('pre140549612780032', 'post140549612780032')"><pre> add_never_cache_headers(response)</pre></li>
- <li onclick="toggle('pre140549612780032', 'post140549612780032')"><pre> return response</pre></li>
- <li onclick="toggle('pre140549612780032', 'post140549612780032')"><pre> return _wrapped_view_func</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612780032')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612780032" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code"><pre>(<WSGIRequest: POST '/admin/login/?next=/admin/'>,)</pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><django.contrib.admin.sites.AdminSite object at 0x7fd442b8fe80></pre></td>
- </tr>
- <tr>
- <td>view_func</td>
- <td class="code"><pre><function AdminSite.login at 0x7fd442b94ca0></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/contrib/admin/sites.py</code> in <code>login</code>
- <div class="context" id="c140549612779968">
- <ol class="pre-context" id="pre140549612779968" style="display: none;" start="392">
- <li onclick="toggle('pre140549612779968', 'post140549612779968')"><pre></pre></li>
- <li onclick="toggle('pre140549612779968', 'post140549612779968')"><pre> defaults = {</pre></li>
- <li onclick="toggle('pre140549612779968', 'post140549612779968')"><pre> 'extra_context': context,</pre></li>
- <li onclick="toggle('pre140549612779968', 'post140549612779968')"><pre> 'authentication_form': self.login_form or AdminAuthenticationForm,</pre></li>
- <li onclick="toggle('pre140549612779968', 'post140549612779968')"><pre> 'template_name': self.login_template or 'admin/login.html',</pre></li>
- <li onclick="toggle('pre140549612779968', 'post140549612779968')"><pre> }</pre></li>
- <li onclick="toggle('pre140549612779968', 'post140549612779968')"><pre> request.current_app = self.name</pre></li>
- </ol>
- <ol class="context-line" start="399">
- <li onclick="toggle('pre140549612779968', 'post140549612779968')"><pre> return LoginView.as_view(**defaults)(request)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779968" style="display: none;" start="400">
- <li onclick="toggle('pre140549612779968', 'post140549612779968')"><pre></pre></li>
- <li onclick="toggle('pre140549612779968', 'post140549612779968')"><pre> def _build_app_dict(self, request, label=None):</pre></li>
- <li onclick="toggle('pre140549612779968', 'post140549612779968')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612779968', 'post140549612779968')"><pre> Build the app dictionary. The optional `label` parameter filters models</pre></li>
- <li onclick="toggle('pre140549612779968', 'post140549612779968')"><pre> of a specific app.</pre></li>
- <li onclick="toggle('pre140549612779968', 'post140549612779968')"><pre> """</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779968')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779968" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>AdminAuthenticationForm</td>
- <td class="code"><pre><class 'django.contrib.admin.forms.AdminAuthenticationForm'></pre></td>
- </tr>
- <tr>
- <td>LoginView</td>
- <td class="code"><pre><class 'django.contrib.auth.views.LoginView'></pre></td>
- </tr>
- <tr>
- <td>context</td>
- <td class="code"><pre>{'app_path': '/admin/login/?next=/admin/',
- 'available_apps': [],
- 'has_permission': False,
- 'is_popup': False,
- 'site_header': 'Django administration',
- 'site_title': 'Django site admin',
- 'site_url': '/',
- 'title': 'Log in',
- 'username': ''}</pre></td>
- </tr>
- <tr>
- <td>defaults</td>
- <td class="code"><pre>{'authentication_form': <class 'django.contrib.admin.forms.AdminAuthenticationForm'>,
- 'extra_context': {'app_path': '/admin/login/?next=/admin/',
- 'available_apps': [],
- 'has_permission': False,
- 'is_popup': False,
- 'site_header': 'Django administration',
- 'site_title': 'Django site admin',
- 'site_url': '/',
- 'title': 'Log in',
- 'username': ''},
- 'template_name': 'admin/login.html'}</pre></td>
- </tr>
- <tr>
- <td>extra_context</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><WSGIRequest: POST '/admin/login/?next=/admin/'></pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.contrib.admin.sites.AdminSite object at 0x7fd442b8fe80></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/views/generic/base.py</code> in <code>view</code>
- <div class="context" id="c140549612779904">
- <ol class="pre-context" id="pre140549612779904" style="display: none;" start="64">
- <li onclick="toggle('pre140549612779904', 'post140549612779904')"><pre> self.head = self.get</pre></li>
- <li onclick="toggle('pre140549612779904', 'post140549612779904')"><pre> self.setup(request, *args, **kwargs)</pre></li>
- <li onclick="toggle('pre140549612779904', 'post140549612779904')"><pre> if not hasattr(self, 'request'):</pre></li>
- <li onclick="toggle('pre140549612779904', 'post140549612779904')"><pre> raise AttributeError(</pre></li>
- <li onclick="toggle('pre140549612779904', 'post140549612779904')"><pre> "%s instance has no 'request' attribute. Did you override "</pre></li>
- <li onclick="toggle('pre140549612779904', 'post140549612779904')"><pre> "setup() and forget to call super()?" % cls.__name__</pre></li>
- <li onclick="toggle('pre140549612779904', 'post140549612779904')"><pre> )</pre></li>
- </ol>
- <ol class="context-line" start="71">
- <li onclick="toggle('pre140549612779904', 'post140549612779904')"><pre> return self.dispatch(request, *args, **kwargs)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779904" style="display: none;" start="72">
- <li onclick="toggle('pre140549612779904', 'post140549612779904')"><pre> view.view_class = cls</pre></li>
- <li onclick="toggle('pre140549612779904', 'post140549612779904')"><pre> view.view_initkwargs = initkwargs</pre></li>
- <li onclick="toggle('pre140549612779904', 'post140549612779904')"><pre></pre></li>
- <li onclick="toggle('pre140549612779904', 'post140549612779904')"><pre> # take name and docstring from class</pre></li>
- <li onclick="toggle('pre140549612779904', 'post140549612779904')"><pre> update_wrapper(view, cls, updated=())</pre></li>
- <li onclick="toggle('pre140549612779904', 'post140549612779904')"><pre></pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779904')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779904" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>cls</td>
- <td class="code"><pre><class 'django.contrib.auth.views.LoginView'></pre></td>
- </tr>
- <tr>
- <td>initkwargs</td>
- <td class="code"><pre>{'authentication_form': <class 'django.contrib.admin.forms.AdminAuthenticationForm'>,
- 'extra_context': {'app_path': '/admin/login/?next=/admin/',
- 'available_apps': [],
- 'has_permission': False,
- 'is_popup': False,
- 'site_header': 'Django administration',
- 'site_title': 'Django site admin',
- 'site_url': '/',
- 'title': 'Log in',
- 'username': ''},
- 'template_name': 'admin/login.html'}</pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><WSGIRequest: POST '/admin/login/?next=/admin/'></pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.contrib.auth.views.LoginView object at 0x7fd441c36070></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/utils/decorators.py</code> in <code>_wrapper</code>
- <div class="context" id="c140549612779840">
- <ol class="pre-context" id="pre140549612779840" style="display: none;" start="38">
- <li onclick="toggle('pre140549612779840', 'post140549612779840')"><pre> # bound_method has the signature that 'decorator' expects i.e. no</pre></li>
- <li onclick="toggle('pre140549612779840', 'post140549612779840')"><pre> # 'self' argument, but it's a closure over self so it can call</pre></li>
- <li onclick="toggle('pre140549612779840', 'post140549612779840')"><pre> # 'func'. Also, wrap method.__get__() in a function because new</pre></li>
- <li onclick="toggle('pre140549612779840', 'post140549612779840')"><pre> # attributes can't be set on bound method objects, only on functions.</pre></li>
- <li onclick="toggle('pre140549612779840', 'post140549612779840')"><pre> bound_method = partial(method.__get__(self, type(self)))</pre></li>
- <li onclick="toggle('pre140549612779840', 'post140549612779840')"><pre> for dec in decorators:</pre></li>
- <li onclick="toggle('pre140549612779840', 'post140549612779840')"><pre> bound_method = dec(bound_method)</pre></li>
- </ol>
- <ol class="context-line" start="45">
- <li onclick="toggle('pre140549612779840', 'post140549612779840')"><pre> return bound_method(*args, **kwargs)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779840" style="display: none;" start="46">
- <li onclick="toggle('pre140549612779840', 'post140549612779840')"><pre></pre></li>
- <li onclick="toggle('pre140549612779840', 'post140549612779840')"><pre> # Copy any attributes that a decorator adds to the function it decorates.</pre></li>
- <li onclick="toggle('pre140549612779840', 'post140549612779840')"><pre> for dec in decorators:</pre></li>
- <li onclick="toggle('pre140549612779840', 'post140549612779840')"><pre> _update_method_wrapper(_wrapper, dec)</pre></li>
- <li onclick="toggle('pre140549612779840', 'post140549612779840')"><pre> # Preserve any existing attributes of 'method', including the name.</pre></li>
- <li onclick="toggle('pre140549612779840', 'post140549612779840')"><pre> update_wrapper(_wrapper, method)</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779840')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779840" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code"><pre>(<WSGIRequest: POST '/admin/login/?next=/admin/'>,)</pre></td>
- </tr>
- <tr>
- <td>bound_method</td>
- <td class="code"><pre><function sensitive_post_parameters.<locals>.decorator.<locals>.sensitive_post_parameters_wrapper at 0x7fd441c20550></pre></td>
- </tr>
- <tr>
- <td>dec</td>
- <td class="code"><pre><function sensitive_post_parameters.<locals>.decorator at 0x7fd441c50040></pre></td>
- </tr>
- <tr>
- <td>decorators</td>
- <td class="code"><pre>[<function sensitive_post_parameters.<locals>.decorator at 0x7fd441c50040>]</pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>method</td>
- <td class="code"><pre><function LoginView.dispatch at 0x7fd441c501f0></pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.contrib.auth.views.LoginView object at 0x7fd441c36070></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/views/decorators/debug.py</code> in <code>sensitive_post_parameters_wrapper</code>
- <div class="context" id="c140549612779776">
- <ol class="pre-context" id="pre140549612779776" style="display: none;" start="69">
- <li onclick="toggle('pre140549612779776', 'post140549612779776')"><pre> "If you are decorating a classmethod, be sure to use "</pre></li>
- <li onclick="toggle('pre140549612779776', 'post140549612779776')"><pre> "@method_decorator."</pre></li>
- <li onclick="toggle('pre140549612779776', 'post140549612779776')"><pre> )</pre></li>
- <li onclick="toggle('pre140549612779776', 'post140549612779776')"><pre> if parameters:</pre></li>
- <li onclick="toggle('pre140549612779776', 'post140549612779776')"><pre> request.sensitive_post_parameters = parameters</pre></li>
- <li onclick="toggle('pre140549612779776', 'post140549612779776')"><pre> else:</pre></li>
- <li onclick="toggle('pre140549612779776', 'post140549612779776')"><pre> request.sensitive_post_parameters = '__ALL__'</pre></li>
- </ol>
- <ol class="context-line" start="76">
- <li onclick="toggle('pre140549612779776', 'post140549612779776')"><pre> return view(request, *args, **kwargs)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779776" style="display: none;" start="77">
- <li onclick="toggle('pre140549612779776', 'post140549612779776')"><pre> return sensitive_post_parameters_wrapper</pre></li>
- <li onclick="toggle('pre140549612779776', 'post140549612779776')"><pre> return decorator</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779776')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779776" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>parameters</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><WSGIRequest: POST '/admin/login/?next=/admin/'></pre></td>
- </tr>
- <tr>
- <td>view</td>
- <td class="code"><pre>functools.partial(<bound method LoginView.dispatch of <django.contrib.auth.views.LoginView object at 0x7fd441c36070>>)</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/utils/decorators.py</code> in <code>_wrapper</code>
- <div class="context" id="c140549612779712">
- <ol class="pre-context" id="pre140549612779712" style="display: none;" start="38">
- <li onclick="toggle('pre140549612779712', 'post140549612779712')"><pre> # bound_method has the signature that 'decorator' expects i.e. no</pre></li>
- <li onclick="toggle('pre140549612779712', 'post140549612779712')"><pre> # 'self' argument, but it's a closure over self so it can call</pre></li>
- <li onclick="toggle('pre140549612779712', 'post140549612779712')"><pre> # 'func'. Also, wrap method.__get__() in a function because new</pre></li>
- <li onclick="toggle('pre140549612779712', 'post140549612779712')"><pre> # attributes can't be set on bound method objects, only on functions.</pre></li>
- <li onclick="toggle('pre140549612779712', 'post140549612779712')"><pre> bound_method = partial(method.__get__(self, type(self)))</pre></li>
- <li onclick="toggle('pre140549612779712', 'post140549612779712')"><pre> for dec in decorators:</pre></li>
- <li onclick="toggle('pre140549612779712', 'post140549612779712')"><pre> bound_method = dec(bound_method)</pre></li>
- </ol>
- <ol class="context-line" start="45">
- <li onclick="toggle('pre140549612779712', 'post140549612779712')"><pre> return bound_method(*args, **kwargs)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779712" style="display: none;" start="46">
- <li onclick="toggle('pre140549612779712', 'post140549612779712')"><pre></pre></li>
- <li onclick="toggle('pre140549612779712', 'post140549612779712')"><pre> # Copy any attributes that a decorator adds to the function it decorates.</pre></li>
- <li onclick="toggle('pre140549612779712', 'post140549612779712')"><pre> for dec in decorators:</pre></li>
- <li onclick="toggle('pre140549612779712', 'post140549612779712')"><pre> _update_method_wrapper(_wrapper, dec)</pre></li>
- <li onclick="toggle('pre140549612779712', 'post140549612779712')"><pre> # Preserve any existing attributes of 'method', including the name.</pre></li>
- <li onclick="toggle('pre140549612779712', 'post140549612779712')"><pre> update_wrapper(_wrapper, method)</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779712')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779712" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code"><pre>(<WSGIRequest: POST '/admin/login/?next=/admin/'>,)</pre></td>
- </tr>
- <tr>
- <td>bound_method</td>
- <td class="code"><pre><function make_middleware_decorator.<locals>._make_decorator.<locals>._decorator.<locals>._wrapped_view at 0x7fd441c20790></pre></td>
- </tr>
- <tr>
- <td>dec</td>
- <td class="code"><pre><function make_middleware_decorator.<locals>._make_decorator.<locals>._decorator at 0x7fd442b74f70></pre></td>
- </tr>
- <tr>
- <td>decorators</td>
- <td class="code"><pre>[<function make_middleware_decorator.<locals>._make_decorator.<locals>._decorator at 0x7fd442b74f70>]</pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>method</td>
- <td class="code"><pre><function LoginView.dispatch at 0x7fd441c50310></pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.contrib.auth.views.LoginView object at 0x7fd441c36070></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/utils/decorators.py</code> in <code>_wrapped_view</code>
- <div class="context" id="c140549612779648">
- <ol class="pre-context" id="pre140549612779648" style="display: none;" start="135">
- <li onclick="toggle('pre140549612779648', 'post140549612779648')"><pre> if result is not None:</pre></li>
- <li onclick="toggle('pre140549612779648', 'post140549612779648')"><pre> return result</pre></li>
- <li onclick="toggle('pre140549612779648', 'post140549612779648')"><pre> if hasattr(middleware, 'process_view'):</pre></li>
- <li onclick="toggle('pre140549612779648', 'post140549612779648')"><pre> result = middleware.process_view(request, view_func, args, kwargs)</pre></li>
- <li onclick="toggle('pre140549612779648', 'post140549612779648')"><pre> if result is not None:</pre></li>
- <li onclick="toggle('pre140549612779648', 'post140549612779648')"><pre> return result</pre></li>
- <li onclick="toggle('pre140549612779648', 'post140549612779648')"><pre> try:</pre></li>
- </ol>
- <ol class="context-line" start="142">
- <li onclick="toggle('pre140549612779648', 'post140549612779648')"><pre> response = view_func(request, *args, **kwargs)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779648" style="display: none;" start="143">
- <li onclick="toggle('pre140549612779648', 'post140549612779648')"><pre> except Exception as e:</pre></li>
- <li onclick="toggle('pre140549612779648', 'post140549612779648')"><pre> if hasattr(middleware, 'process_exception'):</pre></li>
- <li onclick="toggle('pre140549612779648', 'post140549612779648')"><pre> result = middleware.process_exception(request, e)</pre></li>
- <li onclick="toggle('pre140549612779648', 'post140549612779648')"><pre> if result is not None:</pre></li>
- <li onclick="toggle('pre140549612779648', 'post140549612779648')"><pre> return result</pre></li>
- <li onclick="toggle('pre140549612779648', 'post140549612779648')"><pre> raise</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779648')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779648" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>middleware</td>
- <td class="code"><pre><django.middleware.csrf.CsrfViewMiddleware object at 0x7fd442bf35e0></pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><WSGIRequest: POST '/admin/login/?next=/admin/'></pre></td>
- </tr>
- <tr>
- <td>result</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>view_func</td>
- <td class="code"><pre>functools.partial(<bound method LoginView.dispatch of <django.contrib.auth.views.LoginView object at 0x7fd441c36070>>)</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/utils/decorators.py</code> in <code>_wrapper</code>
- <div class="context" id="c140549612779584">
- <ol class="pre-context" id="pre140549612779584" style="display: none;" start="38">
- <li onclick="toggle('pre140549612779584', 'post140549612779584')"><pre> # bound_method has the signature that 'decorator' expects i.e. no</pre></li>
- <li onclick="toggle('pre140549612779584', 'post140549612779584')"><pre> # 'self' argument, but it's a closure over self so it can call</pre></li>
- <li onclick="toggle('pre140549612779584', 'post140549612779584')"><pre> # 'func'. Also, wrap method.__get__() in a function because new</pre></li>
- <li onclick="toggle('pre140549612779584', 'post140549612779584')"><pre> # attributes can't be set on bound method objects, only on functions.</pre></li>
- <li onclick="toggle('pre140549612779584', 'post140549612779584')"><pre> bound_method = partial(method.__get__(self, type(self)))</pre></li>
- <li onclick="toggle('pre140549612779584', 'post140549612779584')"><pre> for dec in decorators:</pre></li>
- <li onclick="toggle('pre140549612779584', 'post140549612779584')"><pre> bound_method = dec(bound_method)</pre></li>
- </ol>
- <ol class="context-line" start="45">
- <li onclick="toggle('pre140549612779584', 'post140549612779584')"><pre> return bound_method(*args, **kwargs)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779584" style="display: none;" start="46">
- <li onclick="toggle('pre140549612779584', 'post140549612779584')"><pre></pre></li>
- <li onclick="toggle('pre140549612779584', 'post140549612779584')"><pre> # Copy any attributes that a decorator adds to the function it decorates.</pre></li>
- <li onclick="toggle('pre140549612779584', 'post140549612779584')"><pre> for dec in decorators:</pre></li>
- <li onclick="toggle('pre140549612779584', 'post140549612779584')"><pre> _update_method_wrapper(_wrapper, dec)</pre></li>
- <li onclick="toggle('pre140549612779584', 'post140549612779584')"><pre> # Preserve any existing attributes of 'method', including the name.</pre></li>
- <li onclick="toggle('pre140549612779584', 'post140549612779584')"><pre> update_wrapper(_wrapper, method)</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779584')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779584" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code"><pre>(<WSGIRequest: POST '/admin/login/?next=/admin/'>,)</pre></td>
- </tr>
- <tr>
- <td>bound_method</td>
- <td class="code"><pre><function never_cache.<locals>._wrapped_view_func at 0x7fd441c20820></pre></td>
- </tr>
- <tr>
- <td>dec</td>
- <td class="code"><pre><function never_cache at 0x7fd442b8a790></pre></td>
- </tr>
- <tr>
- <td>decorators</td>
- <td class="code"><pre>[<function never_cache at 0x7fd442b8a790>]</pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>method</td>
- <td class="code"><pre><function LoginView.dispatch at 0x7fd441c50280></pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.contrib.auth.views.LoginView object at 0x7fd441c36070></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/views/decorators/cache.py</code> in <code>_wrapped_view_func</code>
- <div class="context" id="c140549612779520">
- <ol class="pre-context" id="pre140549612779520" style="display: none;" start="37">
- <li onclick="toggle('pre140549612779520', 'post140549612779520')"><pre></pre></li>
- <li onclick="toggle('pre140549612779520', 'post140549612779520')"><pre>def never_cache(view_func):</pre></li>
- <li onclick="toggle('pre140549612779520', 'post140549612779520')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612779520', 'post140549612779520')"><pre> Decorator that adds headers to a response so that it will never be cached.</pre></li>
- <li onclick="toggle('pre140549612779520', 'post140549612779520')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612779520', 'post140549612779520')"><pre> @wraps(view_func)</pre></li>
- <li onclick="toggle('pre140549612779520', 'post140549612779520')"><pre> def _wrapped_view_func(request, *args, **kwargs):</pre></li>
- </ol>
- <ol class="context-line" start="44">
- <li onclick="toggle('pre140549612779520', 'post140549612779520')"><pre> response = view_func(request, *args, **kwargs)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779520" style="display: none;" start="45">
- <li onclick="toggle('pre140549612779520', 'post140549612779520')"><pre> add_never_cache_headers(response)</pre></li>
- <li onclick="toggle('pre140549612779520', 'post140549612779520')"><pre> return response</pre></li>
- <li onclick="toggle('pre140549612779520', 'post140549612779520')"><pre> return _wrapped_view_func</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779520')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779520" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><WSGIRequest: POST '/admin/login/?next=/admin/'></pre></td>
- </tr>
- <tr>
- <td>view_func</td>
- <td class="code"><pre>functools.partial(<bound method LoginView.dispatch of <django.contrib.auth.views.LoginView object at 0x7fd441c36070>>)</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/contrib/auth/views.py</code> in <code>dispatch</code>
- <div class="context" id="c140549612779456">
- <ol class="pre-context" id="pre140549612779456" style="display: none;" start="54">
- <li onclick="toggle('pre140549612779456', 'post140549612779456')"><pre> redirect_to = self.get_success_url()</pre></li>
- <li onclick="toggle('pre140549612779456', 'post140549612779456')"><pre> if redirect_to == self.request.path:</pre></li>
- <li onclick="toggle('pre140549612779456', 'post140549612779456')"><pre> raise ValueError(</pre></li>
- <li onclick="toggle('pre140549612779456', 'post140549612779456')"><pre> "Redirection loop for authenticated user detected. Check that "</pre></li>
- <li onclick="toggle('pre140549612779456', 'post140549612779456')"><pre> "your LOGIN_REDIRECT_URL doesn't point to a login page."</pre></li>
- <li onclick="toggle('pre140549612779456', 'post140549612779456')"><pre> )</pre></li>
- <li onclick="toggle('pre140549612779456', 'post140549612779456')"><pre> return HttpResponseRedirect(redirect_to)</pre></li>
- </ol>
- <ol class="context-line" start="61">
- <li onclick="toggle('pre140549612779456', 'post140549612779456')"><pre> return super().dispatch(request, *args, **kwargs)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779456" style="display: none;" start="62">
- <li onclick="toggle('pre140549612779456', 'post140549612779456')"><pre></pre></li>
- <li onclick="toggle('pre140549612779456', 'post140549612779456')"><pre> def get_success_url(self):</pre></li>
- <li onclick="toggle('pre140549612779456', 'post140549612779456')"><pre> url = self.get_redirect_url()</pre></li>
- <li onclick="toggle('pre140549612779456', 'post140549612779456')"><pre> return url or resolve_url(settings.LOGIN_REDIRECT_URL)</pre></li>
- <li onclick="toggle('pre140549612779456', 'post140549612779456')"><pre></pre></li>
- <li onclick="toggle('pre140549612779456', 'post140549612779456')"><pre> def get_redirect_url(self):</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779456')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779456" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>__class__</td>
- <td class="code"><pre><class 'django.contrib.auth.views.LoginView'></pre></td>
- </tr>
- <tr>
- <td>args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><WSGIRequest: POST '/admin/login/?next=/admin/'></pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.contrib.auth.views.LoginView object at 0x7fd441c36070></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/views/generic/base.py</code> in <code>dispatch</code>
- <div class="context" id="c140549612779392">
- <ol class="pre-context" id="pre140549612779392" style="display: none;" start="90">
- <li onclick="toggle('pre140549612779392', 'post140549612779392')"><pre> # Try to dispatch to the right method; if a method doesn't exist,</pre></li>
- <li onclick="toggle('pre140549612779392', 'post140549612779392')"><pre> # defer to the error handler. Also defer to the error handler if the</pre></li>
- <li onclick="toggle('pre140549612779392', 'post140549612779392')"><pre> # request method isn't on the approved list.</pre></li>
- <li onclick="toggle('pre140549612779392', 'post140549612779392')"><pre> if request.method.lower() in self.http_method_names:</pre></li>
- <li onclick="toggle('pre140549612779392', 'post140549612779392')"><pre> handler = getattr(self, request.method.lower(), self.http_method_not_allowed)</pre></li>
- <li onclick="toggle('pre140549612779392', 'post140549612779392')"><pre> else:</pre></li>
- <li onclick="toggle('pre140549612779392', 'post140549612779392')"><pre> handler = self.http_method_not_allowed</pre></li>
- </ol>
- <ol class="context-line" start="97">
- <li onclick="toggle('pre140549612779392', 'post140549612779392')"><pre> return handler(request, *args, **kwargs)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779392" style="display: none;" start="98">
- <li onclick="toggle('pre140549612779392', 'post140549612779392')"><pre></pre></li>
- <li onclick="toggle('pre140549612779392', 'post140549612779392')"><pre> def http_method_not_allowed(self, request, *args, **kwargs):</pre></li>
- <li onclick="toggle('pre140549612779392', 'post140549612779392')"><pre> logger.warning(</pre></li>
- <li onclick="toggle('pre140549612779392', 'post140549612779392')"><pre> 'Method Not Allowed (%s): %s', request.method, request.path,</pre></li>
- <li onclick="toggle('pre140549612779392', 'post140549612779392')"><pre> extra={'status_code': 405, 'request': request}</pre></li>
- <li onclick="toggle('pre140549612779392', 'post140549612779392')"><pre> )</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779392')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779392" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>handler</td>
- <td class="code"><pre><bound method ProcessFormView.post of <django.contrib.auth.views.LoginView object at 0x7fd441c36070>></pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><WSGIRequest: POST '/admin/login/?next=/admin/'></pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.contrib.auth.views.LoginView object at 0x7fd441c36070></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/views/generic/edit.py</code> in <code>post</code>
- <div class="context" id="c140549612779328">
- <ol class="pre-context" id="pre140549612779328" style="display: none;" start="134">
- <li onclick="toggle('pre140549612779328', 'post140549612779328')"><pre></pre></li>
- <li onclick="toggle('pre140549612779328', 'post140549612779328')"><pre> def post(self, request, *args, **kwargs):</pre></li>
- <li onclick="toggle('pre140549612779328', 'post140549612779328')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612779328', 'post140549612779328')"><pre> Handle POST requests: instantiate a form instance with the passed</pre></li>
- <li onclick="toggle('pre140549612779328', 'post140549612779328')"><pre> POST variables and then check if it's valid.</pre></li>
- <li onclick="toggle('pre140549612779328', 'post140549612779328')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612779328', 'post140549612779328')"><pre> form = self.get_form()</pre></li>
- </ol>
- <ol class="context-line" start="141">
- <li onclick="toggle('pre140549612779328', 'post140549612779328')"><pre> if form.is_valid():</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779328" style="display: none;" start="142">
- <li onclick="toggle('pre140549612779328', 'post140549612779328')"><pre> return self.form_valid(form)</pre></li>
- <li onclick="toggle('pre140549612779328', 'post140549612779328')"><pre> else:</pre></li>
- <li onclick="toggle('pre140549612779328', 'post140549612779328')"><pre> return self.form_invalid(form)</pre></li>
- <li onclick="toggle('pre140549612779328', 'post140549612779328')"><pre></pre></li>
- <li onclick="toggle('pre140549612779328', 'post140549612779328')"><pre> # PUT is a valid HTTP verb for creating (with a known URL) or editing an</pre></li>
- <li onclick="toggle('pre140549612779328', 'post140549612779328')"><pre> # object, note that browsers only support POST for now.</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779328')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779328" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>form</td>
- <td class="code"><pre><AdminAuthenticationForm bound=True, valid=True, fields=(username;password)></pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><WSGIRequest: POST '/admin/login/?next=/admin/'></pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.contrib.auth.views.LoginView object at 0x7fd441c36070></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/forms/forms.py</code> in <code>is_valid</code>
- <div class="context" id="c140549612779264">
- <ol class="pre-context" id="pre140549612779264" style="display: none;" start="178">
- <li onclick="toggle('pre140549612779264', 'post140549612779264')"><pre> """Return an ErrorDict for the data provided for the form."""</pre></li>
- <li onclick="toggle('pre140549612779264', 'post140549612779264')"><pre> if self._errors is None:</pre></li>
- <li onclick="toggle('pre140549612779264', 'post140549612779264')"><pre> self.full_clean()</pre></li>
- <li onclick="toggle('pre140549612779264', 'post140549612779264')"><pre> return self._errors</pre></li>
- <li onclick="toggle('pre140549612779264', 'post140549612779264')"><pre></pre></li>
- <li onclick="toggle('pre140549612779264', 'post140549612779264')"><pre> def is_valid(self):</pre></li>
- <li onclick="toggle('pre140549612779264', 'post140549612779264')"><pre> """Return True if the form has no errors, or False otherwise."""</pre></li>
- </ol>
- <ol class="context-line" start="185">
- <li onclick="toggle('pre140549612779264', 'post140549612779264')"><pre> return self.is_bound and not self.errors</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779264" style="display: none;" start="186">
- <li onclick="toggle('pre140549612779264', 'post140549612779264')"><pre></pre></li>
- <li onclick="toggle('pre140549612779264', 'post140549612779264')"><pre> def add_prefix(self, field_name):</pre></li>
- <li onclick="toggle('pre140549612779264', 'post140549612779264')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612779264', 'post140549612779264')"><pre> Return the field name with a prefix appended, if this Form has a</pre></li>
- <li onclick="toggle('pre140549612779264', 'post140549612779264')"><pre> prefix set.</pre></li>
- <li onclick="toggle('pre140549612779264', 'post140549612779264')"><pre></pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779264')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779264" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>self</td>
- <td class="code"><pre><AdminAuthenticationForm bound=True, valid=True, fields=(username;password)></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/forms/forms.py</code> in <code>errors</code>
- <div class="context" id="c140549612779200">
- <ol class="pre-context" id="pre140549612779200" style="display: none;" start="173">
- <li onclick="toggle('pre140549612779200', 'post140549612779200')"><pre> self._bound_fields_cache[name] = field.get_bound_field(self, name)</pre></li>
- <li onclick="toggle('pre140549612779200', 'post140549612779200')"><pre> return self._bound_fields_cache[name]</pre></li>
- <li onclick="toggle('pre140549612779200', 'post140549612779200')"><pre></pre></li>
- <li onclick="toggle('pre140549612779200', 'post140549612779200')"><pre> @property</pre></li>
- <li onclick="toggle('pre140549612779200', 'post140549612779200')"><pre> def errors(self):</pre></li>
- <li onclick="toggle('pre140549612779200', 'post140549612779200')"><pre> """Return an ErrorDict for the data provided for the form."""</pre></li>
- <li onclick="toggle('pre140549612779200', 'post140549612779200')"><pre> if self._errors is None:</pre></li>
- </ol>
- <ol class="context-line" start="180">
- <li onclick="toggle('pre140549612779200', 'post140549612779200')"><pre> self.full_clean()</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779200" style="display: none;" start="181">
- <li onclick="toggle('pre140549612779200', 'post140549612779200')"><pre> return self._errors</pre></li>
- <li onclick="toggle('pre140549612779200', 'post140549612779200')"><pre></pre></li>
- <li onclick="toggle('pre140549612779200', 'post140549612779200')"><pre> def is_valid(self):</pre></li>
- <li onclick="toggle('pre140549612779200', 'post140549612779200')"><pre> """Return True if the form has no errors, or False otherwise."""</pre></li>
- <li onclick="toggle('pre140549612779200', 'post140549612779200')"><pre> return self.is_bound and not self.errors</pre></li>
- <li onclick="toggle('pre140549612779200', 'post140549612779200')"><pre></pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779200')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779200" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>self</td>
- <td class="code"><pre><AdminAuthenticationForm bound=True, valid=True, fields=(username;password)></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/forms/forms.py</code> in <code>full_clean</code>
- <div class="context" id="c140549612779136">
- <ol class="pre-context" id="pre140549612779136" style="display: none;" start="375">
- <li onclick="toggle('pre140549612779136', 'post140549612779136')"><pre> self.cleaned_data = {}</pre></li>
- <li onclick="toggle('pre140549612779136', 'post140549612779136')"><pre> # If the form is permitted to be empty, and none of the form data has</pre></li>
- <li onclick="toggle('pre140549612779136', 'post140549612779136')"><pre> # changed from the initial data, short circuit any validation.</pre></li>
- <li onclick="toggle('pre140549612779136', 'post140549612779136')"><pre> if self.empty_permitted and not self.has_changed():</pre></li>
- <li onclick="toggle('pre140549612779136', 'post140549612779136')"><pre> return</pre></li>
- <li onclick="toggle('pre140549612779136', 'post140549612779136')"><pre></pre></li>
- <li onclick="toggle('pre140549612779136', 'post140549612779136')"><pre> self._clean_fields()</pre></li>
- </ol>
- <ol class="context-line" start="382">
- <li onclick="toggle('pre140549612779136', 'post140549612779136')"><pre> self._clean_form()</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779136" style="display: none;" start="383">
- <li onclick="toggle('pre140549612779136', 'post140549612779136')"><pre> self._post_clean()</pre></li>
- <li onclick="toggle('pre140549612779136', 'post140549612779136')"><pre></pre></li>
- <li onclick="toggle('pre140549612779136', 'post140549612779136')"><pre> def _clean_fields(self):</pre></li>
- <li onclick="toggle('pre140549612779136', 'post140549612779136')"><pre> for name, field in self.fields.items():</pre></li>
- <li onclick="toggle('pre140549612779136', 'post140549612779136')"><pre> # value_from_datadict() gets the data from the data dictionaries.</pre></li>
- <li onclick="toggle('pre140549612779136', 'post140549612779136')"><pre> # Each widget type knows how to retrieve its own data, because some</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779136')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779136" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>self</td>
- <td class="code"><pre><AdminAuthenticationForm bound=True, valid=True, fields=(username;password)></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/forms/forms.py</code> in <code>_clean_form</code>
- <div class="context" id="c140549612779072">
- <ol class="pre-context" id="pre140549612779072" style="display: none;" start="402">
- <li onclick="toggle('pre140549612779072', 'post140549612779072')"><pre> value = getattr(self, 'clean_%s' % name)()</pre></li>
- <li onclick="toggle('pre140549612779072', 'post140549612779072')"><pre> self.cleaned_data[name] = value</pre></li>
- <li onclick="toggle('pre140549612779072', 'post140549612779072')"><pre> except ValidationError as e:</pre></li>
- <li onclick="toggle('pre140549612779072', 'post140549612779072')"><pre> self.add_error(name, e)</pre></li>
- <li onclick="toggle('pre140549612779072', 'post140549612779072')"><pre></pre></li>
- <li onclick="toggle('pre140549612779072', 'post140549612779072')"><pre> def _clean_form(self):</pre></li>
- <li onclick="toggle('pre140549612779072', 'post140549612779072')"><pre> try:</pre></li>
- </ol>
- <ol class="context-line" start="409">
- <li onclick="toggle('pre140549612779072', 'post140549612779072')"><pre> cleaned_data = self.clean()</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779072" style="display: none;" start="410">
- <li onclick="toggle('pre140549612779072', 'post140549612779072')"><pre> except ValidationError as e:</pre></li>
- <li onclick="toggle('pre140549612779072', 'post140549612779072')"><pre> self.add_error(None, e)</pre></li>
- <li onclick="toggle('pre140549612779072', 'post140549612779072')"><pre> else:</pre></li>
- <li onclick="toggle('pre140549612779072', 'post140549612779072')"><pre> if cleaned_data is not None:</pre></li>
- <li onclick="toggle('pre140549612779072', 'post140549612779072')"><pre> self.cleaned_data = cleaned_data</pre></li>
- <li onclick="toggle('pre140549612779072', 'post140549612779072')"><pre></pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779072')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779072" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>self</td>
- <td class="code"><pre><AdminAuthenticationForm bound=True, valid=True, fields=(username;password)></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/contrib/auth/forms.py</code> in <code>clean</code>
- <div class="context" id="c140549612779008">
- <ol class="pre-context" id="pre140549612779008" style="display: none;" start="198">
- <li onclick="toggle('pre140549612779008', 'post140549612779008')"><pre> self.fields['username'].label = capfirst(self.username_field.verbose_name)</pre></li>
- <li onclick="toggle('pre140549612779008', 'post140549612779008')"><pre></pre></li>
- <li onclick="toggle('pre140549612779008', 'post140549612779008')"><pre> def clean(self):</pre></li>
- <li onclick="toggle('pre140549612779008', 'post140549612779008')"><pre> username = self.cleaned_data.get('username')</pre></li>
- <li onclick="toggle('pre140549612779008', 'post140549612779008')"><pre> password = self.cleaned_data.get('password')</pre></li>
- <li onclick="toggle('pre140549612779008', 'post140549612779008')"><pre></pre></li>
- <li onclick="toggle('pre140549612779008', 'post140549612779008')"><pre> if username is not None and password:</pre></li>
- </ol>
- <ol class="context-line" start="205">
- <li onclick="toggle('pre140549612779008', 'post140549612779008')"><pre> self.user_cache = authenticate(self.request, username=username, password=password)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612779008" style="display: none;" start="206">
- <li onclick="toggle('pre140549612779008', 'post140549612779008')"><pre> if self.user_cache is None:</pre></li>
- <li onclick="toggle('pre140549612779008', 'post140549612779008')"><pre> raise self.get_invalid_login_error()</pre></li>
- <li onclick="toggle('pre140549612779008', 'post140549612779008')"><pre> else:</pre></li>
- <li onclick="toggle('pre140549612779008', 'post140549612779008')"><pre> self.confirm_login_allowed(self.user_cache)</pre></li>
- <li onclick="toggle('pre140549612779008', 'post140549612779008')"><pre></pre></li>
- <li onclick="toggle('pre140549612779008', 'post140549612779008')"><pre> return self.cleaned_data</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612779008')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612779008" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>password</td>
- <td class="code"><pre>'5d2acf03d2bb71199540d90828a10abd'</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><AdminAuthenticationForm bound=True, valid=True, fields=(username;password)></pre></td>
- </tr>
- <tr>
- <td>username</td>
- <td class="code"><pre>'django'</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/contrib/auth/__init__.py</code> in <code>authenticate</code>
- <div class="context" id="c140549612778944">
- <ol class="pre-context" id="pre140549612778944" style="display: none;" start="66">
- <li onclick="toggle('pre140549612778944', 'post140549612778944')"><pre> for backend, backend_path in _get_backends(return_tuples=True):</pre></li>
- <li onclick="toggle('pre140549612778944', 'post140549612778944')"><pre> try:</pre></li>
- <li onclick="toggle('pre140549612778944', 'post140549612778944')"><pre> inspect.getcallargs(backend.authenticate, request, **credentials)</pre></li>
- <li onclick="toggle('pre140549612778944', 'post140549612778944')"><pre> except TypeError:</pre></li>
- <li onclick="toggle('pre140549612778944', 'post140549612778944')"><pre> # This backend doesn't accept these credentials as arguments. Try the next one.</pre></li>
- <li onclick="toggle('pre140549612778944', 'post140549612778944')"><pre> continue</pre></li>
- <li onclick="toggle('pre140549612778944', 'post140549612778944')"><pre> try:</pre></li>
- </ol>
- <ol class="context-line" start="73">
- <li onclick="toggle('pre140549612778944', 'post140549612778944')"><pre> user = backend.authenticate(request, **credentials)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612778944" style="display: none;" start="74">
- <li onclick="toggle('pre140549612778944', 'post140549612778944')"><pre> except PermissionDenied:</pre></li>
- <li onclick="toggle('pre140549612778944', 'post140549612778944')"><pre> # This backend says to stop in our tracks - this user should not be allowed in at all.</pre></li>
- <li onclick="toggle('pre140549612778944', 'post140549612778944')"><pre> break</pre></li>
- <li onclick="toggle('pre140549612778944', 'post140549612778944')"><pre> if user is None:</pre></li>
- <li onclick="toggle('pre140549612778944', 'post140549612778944')"><pre> continue</pre></li>
- <li onclick="toggle('pre140549612778944', 'post140549612778944')"><pre> # Annotate the user object with the path of the backend.</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612778944')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612778944" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>backend</td>
- <td class="code"><pre><django.contrib.auth.backends.ModelBackend object at 0x7fd441c36250></pre></td>
- </tr>
- <tr>
- <td>backend_path</td>
- <td class="code"><pre>'django.contrib.auth.backends.ModelBackend'</pre></td>
- </tr>
- <tr>
- <td>credentials</td>
- <td class="code"><pre>{'password': '5d2acf03d2bb71199540d90828a10abd', 'username': 'django'}</pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><WSGIRequest: POST '/admin/login/?next=/admin/'></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/contrib/auth/backends.py</code> in <code>authenticate</code>
- <div class="context" id="c140549612778880">
- <ol class="pre-context" id="pre140549612778880" style="display: none;" start="13">
- <li onclick="toggle('pre140549612778880', 'post140549612778880')"><pre> Authenticates against settings.AUTH_USER_MODEL.</pre></li>
- <li onclick="toggle('pre140549612778880', 'post140549612778880')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612778880', 'post140549612778880')"><pre></pre></li>
- <li onclick="toggle('pre140549612778880', 'post140549612778880')"><pre> def authenticate(self, request, username=None, password=None, **kwargs):</pre></li>
- <li onclick="toggle('pre140549612778880', 'post140549612778880')"><pre> if username is None:</pre></li>
- <li onclick="toggle('pre140549612778880', 'post140549612778880')"><pre> username = kwargs.get(UserModel.USERNAME_FIELD)</pre></li>
- <li onclick="toggle('pre140549612778880', 'post140549612778880')"><pre> try:</pre></li>
- </ol>
- <ol class="context-line" start="20">
- <li onclick="toggle('pre140549612778880', 'post140549612778880')"><pre> user = UserModel._default_manager.get_by_natural_key(username)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612778880" style="display: none;" start="21">
- <li onclick="toggle('pre140549612778880', 'post140549612778880')"><pre> except UserModel.DoesNotExist:</pre></li>
- <li onclick="toggle('pre140549612778880', 'post140549612778880')"><pre> # Run the default password hasher once to reduce the timing</pre></li>
- <li onclick="toggle('pre140549612778880', 'post140549612778880')"><pre> # difference between an existing and a nonexistent user (#20760).</pre></li>
- <li onclick="toggle('pre140549612778880', 'post140549612778880')"><pre> UserModel().set_password(password)</pre></li>
- <li onclick="toggle('pre140549612778880', 'post140549612778880')"><pre> else:</pre></li>
- <li onclick="toggle('pre140549612778880', 'post140549612778880')"><pre> if user.check_password(password) and self.user_can_authenticate(user):</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612778880')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612778880" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>password</td>
- <td class="code"><pre>'5d2acf03d2bb71199540d90828a10abd'</pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><WSGIRequest: POST '/admin/login/?next=/admin/'></pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.contrib.auth.backends.ModelBackend object at 0x7fd441c36250></pre></td>
- </tr>
- <tr>
- <td>username</td>
- <td class="code"><pre>'django'</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/contrib/auth/base_user.py</code> in <code>get_by_natural_key</code>
- <div class="context" id="c140549612778816">
- <ol class="pre-context" id="pre140549612778816" style="display: none;" start="37">
- <li onclick="toggle('pre140549612778816', 'post140549612778816')"><pre> Generate a random password with the given length and given</pre></li>
- <li onclick="toggle('pre140549612778816', 'post140549612778816')"><pre> allowed_chars. The default value of allowed_chars does not have "I" or</pre></li>
- <li onclick="toggle('pre140549612778816', 'post140549612778816')"><pre> "O" or letters and digits that look similar -- just to avoid confusion.</pre></li>
- <li onclick="toggle('pre140549612778816', 'post140549612778816')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612778816', 'post140549612778816')"><pre> return get_random_string(length, allowed_chars)</pre></li>
- <li onclick="toggle('pre140549612778816', 'post140549612778816')"><pre></pre></li>
- <li onclick="toggle('pre140549612778816', 'post140549612778816')"><pre> def get_by_natural_key(self, username):</pre></li>
- </ol>
- <ol class="context-line" start="44">
- <li onclick="toggle('pre140549612778816', 'post140549612778816')"><pre> return self.get(**{self.model.USERNAME_FIELD: username})</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612778816" style="display: none;" start="45">
- <li onclick="toggle('pre140549612778816', 'post140549612778816')"><pre></pre></li>
- <li onclick="toggle('pre140549612778816', 'post140549612778816')"><pre></pre></li>
- <li onclick="toggle('pre140549612778816', 'post140549612778816')"><pre>class AbstractBaseUser(models.Model):</pre></li>
- <li onclick="toggle('pre140549612778816', 'post140549612778816')"><pre> password = models.CharField(_('password'), max_length=128)</pre></li>
- <li onclick="toggle('pre140549612778816', 'post140549612778816')"><pre> last_login = models.DateTimeField(_('last login'), blank=True, null=True)</pre></li>
- <li onclick="toggle('pre140549612778816', 'post140549612778816')"><pre></pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612778816')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612778816" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.contrib.auth.models.UserManager object at 0x7fd441d7d7c0></pre></td>
- </tr>
- <tr>
- <td>username</td>
- <td class="code"><pre>'django'</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/db/models/manager.py</code> in <code>manager_method</code>
- <div class="context" id="c140549612778752">
- <ol class="pre-context" id="pre140549612778752" style="display: none;" start="75">
- <li onclick="toggle('pre140549612778752', 'post140549612778752')"><pre> def check(self, **kwargs):</pre></li>
- <li onclick="toggle('pre140549612778752', 'post140549612778752')"><pre> return []</pre></li>
- <li onclick="toggle('pre140549612778752', 'post140549612778752')"><pre></pre></li>
- <li onclick="toggle('pre140549612778752', 'post140549612778752')"><pre> @classmethod</pre></li>
- <li onclick="toggle('pre140549612778752', 'post140549612778752')"><pre> def _get_queryset_methods(cls, queryset_class):</pre></li>
- <li onclick="toggle('pre140549612778752', 'post140549612778752')"><pre> def create_method(name, method):</pre></li>
- <li onclick="toggle('pre140549612778752', 'post140549612778752')"><pre> def manager_method(self, *args, **kwargs):</pre></li>
- </ol>
- <ol class="context-line" start="82">
- <li onclick="toggle('pre140549612778752', 'post140549612778752')"><pre> return getattr(self.get_queryset(), name)(*args, **kwargs)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612778752" style="display: none;" start="83">
- <li onclick="toggle('pre140549612778752', 'post140549612778752')"><pre> manager_method.__name__ = method.__name__</pre></li>
- <li onclick="toggle('pre140549612778752', 'post140549612778752')"><pre> manager_method.__doc__ = method.__doc__</pre></li>
- <li onclick="toggle('pre140549612778752', 'post140549612778752')"><pre> return manager_method</pre></li>
- <li onclick="toggle('pre140549612778752', 'post140549612778752')"><pre></pre></li>
- <li onclick="toggle('pre140549612778752', 'post140549612778752')"><pre> new_methods = {}</pre></li>
- <li onclick="toggle('pre140549612778752', 'post140549612778752')"><pre> for name, method in inspect.getmembers(queryset_class, predicate=inspect.isfunction):</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612778752')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612778752" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{'username': 'django'}</pre></td>
- </tr>
- <tr>
- <td>name</td>
- <td class="code"><pre>'get'</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.contrib.auth.models.UserManager object at 0x7fd441d7d7c0></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/db/models/query.py</code> in <code>get</code>
- <div class="context" id="c140549612778688">
- <ol class="pre-context" id="pre140549612778688" style="display: none;" start="395">
- <li onclick="toggle('pre140549612778688', 'post140549612778688')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612778688', 'post140549612778688')"><pre> Perform the query and return a single object matching the given</pre></li>
- <li onclick="toggle('pre140549612778688', 'post140549612778688')"><pre> keyword arguments.</pre></li>
- <li onclick="toggle('pre140549612778688', 'post140549612778688')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612778688', 'post140549612778688')"><pre> clone = self.filter(*args, **kwargs)</pre></li>
- <li onclick="toggle('pre140549612778688', 'post140549612778688')"><pre> if self.query.can_filter() and not self.query.distinct_fields:</pre></li>
- <li onclick="toggle('pre140549612778688', 'post140549612778688')"><pre> clone = clone.order_by()</pre></li>
- </ol>
- <ol class="context-line" start="402">
- <li onclick="toggle('pre140549612778688', 'post140549612778688')"><pre> num = len(clone)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612778688" style="display: none;" start="403">
- <li onclick="toggle('pre140549612778688', 'post140549612778688')"><pre> if num == 1:</pre></li>
- <li onclick="toggle('pre140549612778688', 'post140549612778688')"><pre> return clone._result_cache[0]</pre></li>
- <li onclick="toggle('pre140549612778688', 'post140549612778688')"><pre> if not num:</pre></li>
- <li onclick="toggle('pre140549612778688', 'post140549612778688')"><pre> raise self.model.DoesNotExist(</pre></li>
- <li onclick="toggle('pre140549612778688', 'post140549612778688')"><pre> "%s matching query does not exist." %</pre></li>
- <li onclick="toggle('pre140549612778688', 'post140549612778688')"><pre> self.model._meta.object_name</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612778688')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612778688" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>clone</td>
- <td class="code"><pre>Error in formatting: ProgrammingError: relation "auth_user" does not exist
- LINE 1: ...user"."is_active", "auth_user"."date_joined" FROM "auth_user...
- ^
- </pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{'username': 'django'}</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre>Error in formatting: ProgrammingError: relation "auth_user" does not exist
- LINE 1: ...user"."is_active", "auth_user"."date_joined" FROM "auth_user...
- ^
- </pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/db/models/query.py</code> in <code>__len__</code>
- <div class="context" id="c140549612778624">
- <ol class="pre-context" id="pre140549612778624" style="display: none;" start="249">
- <li onclick="toggle('pre140549612778624', 'post140549612778624')"><pre> def __repr__(self):</pre></li>
- <li onclick="toggle('pre140549612778624', 'post140549612778624')"><pre> data = list(self[:REPR_OUTPUT_SIZE + 1])</pre></li>
- <li onclick="toggle('pre140549612778624', 'post140549612778624')"><pre> if len(data) > REPR_OUTPUT_SIZE:</pre></li>
- <li onclick="toggle('pre140549612778624', 'post140549612778624')"><pre> data[-1] = "...(remaining elements truncated)..."</pre></li>
- <li onclick="toggle('pre140549612778624', 'post140549612778624')"><pre> return '<%s %r>' % (self.__class__.__name__, data)</pre></li>
- <li onclick="toggle('pre140549612778624', 'post140549612778624')"><pre></pre></li>
- <li onclick="toggle('pre140549612778624', 'post140549612778624')"><pre> def __len__(self):</pre></li>
- </ol>
- <ol class="context-line" start="256">
- <li onclick="toggle('pre140549612778624', 'post140549612778624')"><pre> self._fetch_all()</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612778624" style="display: none;" start="257">
- <li onclick="toggle('pre140549612778624', 'post140549612778624')"><pre> return len(self._result_cache)</pre></li>
- <li onclick="toggle('pre140549612778624', 'post140549612778624')"><pre></pre></li>
- <li onclick="toggle('pre140549612778624', 'post140549612778624')"><pre> def __iter__(self):</pre></li>
- <li onclick="toggle('pre140549612778624', 'post140549612778624')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612778624', 'post140549612778624')"><pre> The queryset iterator protocol uses three nested iterators in the</pre></li>
- <li onclick="toggle('pre140549612778624', 'post140549612778624')"><pre> default case:</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612778624')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612778624" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>self</td>
- <td class="code"><pre>Error in formatting: ProgrammingError: relation "auth_user" does not exist
- LINE 1: ...user"."is_active", "auth_user"."date_joined" FROM "auth_user...
- ^
- </pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/db/models/query.py</code> in <code>_fetch_all</code>
- <div class="context" id="c140549612778560">
- <ol class="pre-context" id="pre140549612778560" style="display: none;" start="1235">
- <li onclick="toggle('pre140549612778560', 'post140549612778560')"><pre> c._known_related_objects = self._known_related_objects</pre></li>
- <li onclick="toggle('pre140549612778560', 'post140549612778560')"><pre> c._iterable_class = self._iterable_class</pre></li>
- <li onclick="toggle('pre140549612778560', 'post140549612778560')"><pre> c._fields = self._fields</pre></li>
- <li onclick="toggle('pre140549612778560', 'post140549612778560')"><pre> return c</pre></li>
- <li onclick="toggle('pre140549612778560', 'post140549612778560')"><pre></pre></li>
- <li onclick="toggle('pre140549612778560', 'post140549612778560')"><pre> def _fetch_all(self):</pre></li>
- <li onclick="toggle('pre140549612778560', 'post140549612778560')"><pre> if self._result_cache is None:</pre></li>
- </ol>
- <ol class="context-line" start="1242">
- <li onclick="toggle('pre140549612778560', 'post140549612778560')"><pre> self._result_cache = list(self._iterable_class(self))</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612778560" style="display: none;" start="1243">
- <li onclick="toggle('pre140549612778560', 'post140549612778560')"><pre> if self._prefetch_related_lookups and not self._prefetch_done:</pre></li>
- <li onclick="toggle('pre140549612778560', 'post140549612778560')"><pre> self._prefetch_related_objects()</pre></li>
- <li onclick="toggle('pre140549612778560', 'post140549612778560')"><pre></pre></li>
- <li onclick="toggle('pre140549612778560', 'post140549612778560')"><pre> def _next_is_sticky(self):</pre></li>
- <li onclick="toggle('pre140549612778560', 'post140549612778560')"><pre> """</pre></li>
- <li onclick="toggle('pre140549612778560', 'post140549612778560')"><pre> Indicate that the next filter call and the one following that should</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612778560')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612778560" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>self</td>
- <td class="code"><pre>Error in formatting: ProgrammingError: relation "auth_user" does not exist
- LINE 1: ...user"."is_active", "auth_user"."date_joined" FROM "auth_user...
- ^
- </pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/db/models/query.py</code> in <code>__iter__</code>
- <div class="context" id="c140549612777536">
- <ol class="pre-context" id="pre140549612777536" style="display: none;" start="48">
- <li onclick="toggle('pre140549612777536', 'post140549612777536')"><pre></pre></li>
- <li onclick="toggle('pre140549612777536', 'post140549612777536')"><pre> def __iter__(self):</pre></li>
- <li onclick="toggle('pre140549612777536', 'post140549612777536')"><pre> queryset = self.queryset</pre></li>
- <li onclick="toggle('pre140549612777536', 'post140549612777536')"><pre> db = queryset.db</pre></li>
- <li onclick="toggle('pre140549612777536', 'post140549612777536')"><pre> compiler = queryset.query.get_compiler(using=db)</pre></li>
- <li onclick="toggle('pre140549612777536', 'post140549612777536')"><pre> # Execute the query. This will also fill compiler.select, klass_info,</pre></li>
- <li onclick="toggle('pre140549612777536', 'post140549612777536')"><pre> # and annotations.</pre></li>
- </ol>
- <ol class="context-line" start="55">
- <li onclick="toggle('pre140549612777536', 'post140549612777536')"><pre> results = compiler.execute_sql(chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612777536" style="display: none;" start="56">
- <li onclick="toggle('pre140549612777536', 'post140549612777536')"><pre> select, klass_info, annotation_col_map = (compiler.select, compiler.klass_info,</pre></li>
- <li onclick="toggle('pre140549612777536', 'post140549612777536')"><pre> compiler.annotation_col_map)</pre></li>
- <li onclick="toggle('pre140549612777536', 'post140549612777536')"><pre> model_cls = klass_info['model']</pre></li>
- <li onclick="toggle('pre140549612777536', 'post140549612777536')"><pre> select_fields = klass_info['select_fields']</pre></li>
- <li onclick="toggle('pre140549612777536', 'post140549612777536')"><pre> model_fields_start, model_fields_end = select_fields[0], select_fields[-1] + 1</pre></li>
- <li onclick="toggle('pre140549612777536', 'post140549612777536')"><pre> init_list = [f[0].target.attname</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612777536')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612777536" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>compiler</td>
- <td class="code"><pre><django.db.models.sql.compiler.SQLCompiler object at 0x7fd441c364c0></pre></td>
- </tr>
- <tr>
- <td>db</td>
- <td class="code"><pre>'default'</pre></td>
- </tr>
- <tr>
- <td>queryset</td>
- <td class="code"><pre>Error in formatting: ProgrammingError: relation "auth_user" does not exist
- LINE 1: ...user"."is_active", "auth_user"."date_joined" FROM "auth_user...
- ^
- </pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.db.models.query.ModelIterable object at 0x7fd441c364f0></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/db/models/sql/compiler.py</code> in <code>execute_sql</code>
- <div class="context" id="c140549612778432">
- <ol class="pre-context" id="pre140549612778432" style="display: none;" start="1133">
- <li onclick="toggle('pre140549612778432', 'post140549612778432')"><pre> else:</pre></li>
- <li onclick="toggle('pre140549612778432', 'post140549612778432')"><pre> return</pre></li>
- <li onclick="toggle('pre140549612778432', 'post140549612778432')"><pre> if chunked_fetch:</pre></li>
- <li onclick="toggle('pre140549612778432', 'post140549612778432')"><pre> cursor = self.connection.chunked_cursor()</pre></li>
- <li onclick="toggle('pre140549612778432', 'post140549612778432')"><pre> else:</pre></li>
- <li onclick="toggle('pre140549612778432', 'post140549612778432')"><pre> cursor = self.connection.cursor()</pre></li>
- <li onclick="toggle('pre140549612778432', 'post140549612778432')"><pre> try:</pre></li>
- </ol>
- <ol class="context-line" start="1140">
- <li onclick="toggle('pre140549612778432', 'post140549612778432')"><pre> cursor.execute(sql, params)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612778432" style="display: none;" start="1141">
- <li onclick="toggle('pre140549612778432', 'post140549612778432')"><pre> except Exception:</pre></li>
- <li onclick="toggle('pre140549612778432', 'post140549612778432')"><pre> # Might fail for server-side cursors (e.g. connection closed)</pre></li>
- <li onclick="toggle('pre140549612778432', 'post140549612778432')"><pre> cursor.close()</pre></li>
- <li onclick="toggle('pre140549612778432', 'post140549612778432')"><pre> raise</pre></li>
- <li onclick="toggle('pre140549612778432', 'post140549612778432')"><pre></pre></li>
- <li onclick="toggle('pre140549612778432', 'post140549612778432')"><pre> if result_type == CURSOR:</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612778432')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612778432" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>chunk_size</td>
- <td class="code"><pre>100</pre></td>
- </tr>
- <tr>
- <td>chunked_fetch</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>cursor</td>
- <td class="code"><pre><django.db.backends.utils.CursorDebugWrapper object at 0x7fd441bcffd0></pre></td>
- </tr>
- <tr>
- <td>params</td>
- <td class="code"><pre>('django',)</pre></td>
- </tr>
- <tr>
- <td>result_type</td>
- <td class="code"><pre>'multi'</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.db.models.sql.compiler.SQLCompiler object at 0x7fd441c364c0></pre></td>
- </tr>
- <tr>
- <td>sql</td>
- <td class="code"><pre>('SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", '
- '"auth_user"."is_superuser", "auth_user"."username", '
- '"auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", '
- '"auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" '
- 'FROM "auth_user" WHERE "auth_user"."username" = %s')</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/db/backends/utils.py</code> in <code>execute</code>
- <div class="context" id="c140549612778304">
- <ol class="pre-context" id="pre140549612778304" style="display: none;" start="92">
- <li onclick="toggle('pre140549612778304', 'post140549612778304')"><pre>class CursorDebugWrapper(CursorWrapper):</pre></li>
- <li onclick="toggle('pre140549612778304', 'post140549612778304')"><pre></pre></li>
- <li onclick="toggle('pre140549612778304', 'post140549612778304')"><pre> # XXX callproc isn't instrumented at this time.</pre></li>
- <li onclick="toggle('pre140549612778304', 'post140549612778304')"><pre></pre></li>
- <li onclick="toggle('pre140549612778304', 'post140549612778304')"><pre> def execute(self, sql, params=None):</pre></li>
- <li onclick="toggle('pre140549612778304', 'post140549612778304')"><pre> start = time()</pre></li>
- <li onclick="toggle('pre140549612778304', 'post140549612778304')"><pre> try:</pre></li>
- </ol>
- <ol class="context-line" start="99">
- <li onclick="toggle('pre140549612778304', 'post140549612778304')"><pre> return super().execute(sql, params)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612778304" style="display: none;" start="100">
- <li onclick="toggle('pre140549612778304', 'post140549612778304')"><pre> finally:</pre></li>
- <li onclick="toggle('pre140549612778304', 'post140549612778304')"><pre> stop = time()</pre></li>
- <li onclick="toggle('pre140549612778304', 'post140549612778304')"><pre> duration = stop - start</pre></li>
- <li onclick="toggle('pre140549612778304', 'post140549612778304')"><pre> sql = self.db.ops.last_executed_query(self.cursor, sql, params)</pre></li>
- <li onclick="toggle('pre140549612778304', 'post140549612778304')"><pre> self.db.queries_log.append({</pre></li>
- <li onclick="toggle('pre140549612778304', 'post140549612778304')"><pre> 'sql': sql,</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612778304')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612778304" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>__class__</td>
- <td class="code"><pre><class 'django.db.backends.utils.CursorDebugWrapper'></pre></td>
- </tr>
- <tr>
- <td>duration</td>
- <td class="code"><pre>0.00152587890625</pre></td>
- </tr>
- <tr>
- <td>params</td>
- <td class="code"><pre>('django',)</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.db.backends.utils.CursorDebugWrapper object at 0x7fd441bcffd0></pre></td>
- </tr>
- <tr>
- <td>sql</td>
- <td class="code"><pre>('SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", '
- '"auth_user"."is_superuser", "auth_user"."username", '
- '"auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", '
- '"auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" '
- 'FROM "auth_user" WHERE "auth_user"."username" = \'django\'')</pre></td>
- </tr>
- <tr>
- <td>start</td>
- <td class="code"><pre>1599162573.954946</pre></td>
- </tr>
- <tr>
- <td>stop</td>
- <td class="code"><pre>1599162573.956472</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/db/backends/utils.py</code> in <code>execute</code>
- <div class="context" id="c140549612778240">
- <ol class="pre-context" id="pre140549612778240" style="display: none;" start="60">
- <li onclick="toggle('pre140549612778240', 'post140549612778240')"><pre> elif kparams is None:</pre></li>
- <li onclick="toggle('pre140549612778240', 'post140549612778240')"><pre> return self.cursor.callproc(procname, params)</pre></li>
- <li onclick="toggle('pre140549612778240', 'post140549612778240')"><pre> else:</pre></li>
- <li onclick="toggle('pre140549612778240', 'post140549612778240')"><pre> params = params or ()</pre></li>
- <li onclick="toggle('pre140549612778240', 'post140549612778240')"><pre> return self.cursor.callproc(procname, params, kparams)</pre></li>
- <li onclick="toggle('pre140549612778240', 'post140549612778240')"><pre></pre></li>
- <li onclick="toggle('pre140549612778240', 'post140549612778240')"><pre> def execute(self, sql, params=None):</pre></li>
- </ol>
- <ol class="context-line" start="67">
- <li onclick="toggle('pre140549612778240', 'post140549612778240')"><pre> return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612778240" style="display: none;" start="68">
- <li onclick="toggle('pre140549612778240', 'post140549612778240')"><pre></pre></li>
- <li onclick="toggle('pre140549612778240', 'post140549612778240')"><pre> def executemany(self, sql, param_list):</pre></li>
- <li onclick="toggle('pre140549612778240', 'post140549612778240')"><pre> return self._execute_with_wrappers(sql, param_list, many=True, executor=self._executemany)</pre></li>
- <li onclick="toggle('pre140549612778240', 'post140549612778240')"><pre></pre></li>
- <li onclick="toggle('pre140549612778240', 'post140549612778240')"><pre> def _execute_with_wrappers(self, sql, params, many, executor):</pre></li>
- <li onclick="toggle('pre140549612778240', 'post140549612778240')"><pre> context = {'connection': self.db, 'cursor': self}</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612778240')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612778240" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>params</td>
- <td class="code"><pre>('django',)</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.db.backends.utils.CursorDebugWrapper object at 0x7fd441bcffd0></pre></td>
- </tr>
- <tr>
- <td>sql</td>
- <td class="code"><pre>('SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", '
- '"auth_user"."is_superuser", "auth_user"."username", '
- '"auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", '
- '"auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" '
- 'FROM "auth_user" WHERE "auth_user"."username" = %s')</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/db/backends/utils.py</code> in <code>_execute_with_wrappers</code>
- <div class="context" id="c140549612778176">
- <ol class="pre-context" id="pre140549612778176" style="display: none;" start="69">
- <li onclick="toggle('pre140549612778176', 'post140549612778176')"><pre> def executemany(self, sql, param_list):</pre></li>
- <li onclick="toggle('pre140549612778176', 'post140549612778176')"><pre> return self._execute_with_wrappers(sql, param_list, many=True, executor=self._executemany)</pre></li>
- <li onclick="toggle('pre140549612778176', 'post140549612778176')"><pre></pre></li>
- <li onclick="toggle('pre140549612778176', 'post140549612778176')"><pre> def _execute_with_wrappers(self, sql, params, many, executor):</pre></li>
- <li onclick="toggle('pre140549612778176', 'post140549612778176')"><pre> context = {'connection': self.db, 'cursor': self}</pre></li>
- <li onclick="toggle('pre140549612778176', 'post140549612778176')"><pre> for wrapper in reversed(self.db.execute_wrappers):</pre></li>
- <li onclick="toggle('pre140549612778176', 'post140549612778176')"><pre> executor = functools.partial(wrapper, executor)</pre></li>
- </ol>
- <ol class="context-line" start="76">
- <li onclick="toggle('pre140549612778176', 'post140549612778176')"><pre> return executor(sql, params, many, context)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612778176" style="display: none;" start="77">
- <li onclick="toggle('pre140549612778176', 'post140549612778176')"><pre></pre></li>
- <li onclick="toggle('pre140549612778176', 'post140549612778176')"><pre> def _execute(self, sql, params, *ignored_wrapper_args):</pre></li>
- <li onclick="toggle('pre140549612778176', 'post140549612778176')"><pre> self.db.validate_no_broken_transaction()</pre></li>
- <li onclick="toggle('pre140549612778176', 'post140549612778176')"><pre> with self.db.wrap_database_errors:</pre></li>
- <li onclick="toggle('pre140549612778176', 'post140549612778176')"><pre> if params is None:</pre></li>
- <li onclick="toggle('pre140549612778176', 'post140549612778176')"><pre> return self.cursor.execute(sql)</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612778176')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612778176" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>context</td>
- <td class="code"><pre>{'connection': <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7fd441ceaa60>,
- 'cursor': <django.db.backends.utils.CursorDebugWrapper object at 0x7fd441bcffd0>}</pre></td>
- </tr>
- <tr>
- <td>executor</td>
- <td class="code"><pre><bound method CursorWrapper._execute of <django.db.backends.utils.CursorDebugWrapper object at 0x7fd441bcffd0>></pre></td>
- </tr>
- <tr>
- <td>many</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>params</td>
- <td class="code"><pre>('django',)</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.db.backends.utils.CursorDebugWrapper object at 0x7fd441bcffd0></pre></td>
- </tr>
- <tr>
- <td>sql</td>
- <td class="code"><pre>('SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", '
- '"auth_user"."is_superuser", "auth_user"."username", '
- '"auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", '
- '"auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" '
- 'FROM "auth_user" WHERE "auth_user"."username" = %s')</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/db/backends/utils.py</code> in <code>_execute</code>
- <div class="context" id="c140549612778112">
- <ol class="pre-context" id="pre140549612778112" style="display: none;" start="77">
- <li onclick="toggle('pre140549612778112', 'post140549612778112')"><pre></pre></li>
- <li onclick="toggle('pre140549612778112', 'post140549612778112')"><pre> def _execute(self, sql, params, *ignored_wrapper_args):</pre></li>
- <li onclick="toggle('pre140549612778112', 'post140549612778112')"><pre> self.db.validate_no_broken_transaction()</pre></li>
- <li onclick="toggle('pre140549612778112', 'post140549612778112')"><pre> with self.db.wrap_database_errors:</pre></li>
- <li onclick="toggle('pre140549612778112', 'post140549612778112')"><pre> if params is None:</pre></li>
- <li onclick="toggle('pre140549612778112', 'post140549612778112')"><pre> return self.cursor.execute(sql)</pre></li>
- <li onclick="toggle('pre140549612778112', 'post140549612778112')"><pre> else:</pre></li>
- </ol>
- <ol class="context-line" start="84">
- <li onclick="toggle('pre140549612778112', 'post140549612778112')"><pre> return self.cursor.execute(sql, params)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612778112" style="display: none;" start="85">
- <li onclick="toggle('pre140549612778112', 'post140549612778112')"><pre></pre></li>
- <li onclick="toggle('pre140549612778112', 'post140549612778112')"><pre> def _executemany(self, sql, param_list, *ignored_wrapper_args):</pre></li>
- <li onclick="toggle('pre140549612778112', 'post140549612778112')"><pre> self.db.validate_no_broken_transaction()</pre></li>
- <li onclick="toggle('pre140549612778112', 'post140549612778112')"><pre> with self.db.wrap_database_errors:</pre></li>
- <li onclick="toggle('pre140549612778112', 'post140549612778112')"><pre> return self.cursor.executemany(sql, param_list)</pre></li>
- <li onclick="toggle('pre140549612778112', 'post140549612778112')"><pre></pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612778112')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612778112" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>ignored_wrapper_args</td>
- <td class="code"><pre>(False,
- {'connection': <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7fd441ceaa60>,
- 'cursor': <django.db.backends.utils.CursorDebugWrapper object at 0x7fd441bcffd0>})</pre></td>
- </tr>
- <tr>
- <td>params</td>
- <td class="code"><pre>('django',)</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.db.backends.utils.CursorDebugWrapper object at 0x7fd441bcffd0></pre></td>
- </tr>
- <tr>
- <td>sql</td>
- <td class="code"><pre>('SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", '
- '"auth_user"."is_superuser", "auth_user"."username", '
- '"auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", '
- '"auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" '
- 'FROM "auth_user" WHERE "auth_user"."username" = %s')</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/db/utils.py</code> in <code>__exit__</code>
- <div class="context" id="c140549612778048">
- <ol class="pre-context" id="pre140549612778048" style="display: none;" start="82">
- <li onclick="toggle('pre140549612778048', 'post140549612778048')"><pre> db_exc_type = getattr(self.wrapper.Database, dj_exc_type.__name__)</pre></li>
- <li onclick="toggle('pre140549612778048', 'post140549612778048')"><pre> if issubclass(exc_type, db_exc_type):</pre></li>
- <li onclick="toggle('pre140549612778048', 'post140549612778048')"><pre> dj_exc_value = dj_exc_type(*exc_value.args)</pre></li>
- <li onclick="toggle('pre140549612778048', 'post140549612778048')"><pre> # Only set the 'errors_occurred' flag for errors that may make</pre></li>
- <li onclick="toggle('pre140549612778048', 'post140549612778048')"><pre> # the connection unusable.</pre></li>
- <li onclick="toggle('pre140549612778048', 'post140549612778048')"><pre> if dj_exc_type not in (DataError, IntegrityError):</pre></li>
- <li onclick="toggle('pre140549612778048', 'post140549612778048')"><pre> self.wrapper.errors_occurred = True</pre></li>
- </ol>
- <ol class="context-line" start="89">
- <li onclick="toggle('pre140549612778048', 'post140549612778048')"><pre> raise dj_exc_value.with_traceback(traceback) from exc_value</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612778048" style="display: none;" start="90">
- <li onclick="toggle('pre140549612778048', 'post140549612778048')"><pre></pre></li>
- <li onclick="toggle('pre140549612778048', 'post140549612778048')"><pre> def __call__(self, func):</pre></li>
- <li onclick="toggle('pre140549612778048', 'post140549612778048')"><pre> # Note that we are intentionally not using @wraps here for performance</pre></li>
- <li onclick="toggle('pre140549612778048', 'post140549612778048')"><pre> # reasons. Refs #21109.</pre></li>
- <li onclick="toggle('pre140549612778048', 'post140549612778048')"><pre> def inner(*args, **kwargs):</pre></li>
- <li onclick="toggle('pre140549612778048', 'post140549612778048')"><pre> with self:</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612778048')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612778048" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>db_exc_type</td>
- <td class="code"><pre><class 'psycopg2.ProgrammingError'></pre></td>
- </tr>
- <tr>
- <td>dj_exc_type</td>
- <td class="code"><pre><class 'django.db.utils.ProgrammingError'></pre></td>
- </tr>
- <tr>
- <td>dj_exc_value</td>
- <td class="code"><pre>ProgrammingError('relation "auth_user" does not exist\nLINE 1: ...user"."is_active", "auth_user"."date_joined" FROM "auth_user...\n ^\n')</pre></td>
- </tr>
- <tr>
- <td>exc_type</td>
- <td class="code"><pre><class 'psycopg2.errors.UndefinedTable'></pre></td>
- </tr>
- <tr>
- <td>exc_value</td>
- <td class="code"><pre>UndefinedTable('relation "auth_user" does not exist\nLINE 1: ...user"."is_active", "auth_user"."date_joined" FROM "auth_user...\n ^\n')</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.db.utils.DatabaseErrorWrapper object at 0x7fd441c365e0></pre></td>
- </tr>
- <tr>
- <td>traceback</td>
- <td class="code"><pre><traceback object at 0x7fd441be3100></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python3/dist-packages/django/db/backends/utils.py</code> in <code>_execute</code>
- <div class="context" id="c140549612777728">
- <ol class="pre-context" id="pre140549612777728" style="display: none;" start="77">
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre></pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> def _execute(self, sql, params, *ignored_wrapper_args):</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> self.db.validate_no_broken_transaction()</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> with self.db.wrap_database_errors:</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> if params is None:</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> return self.cursor.execute(sql)</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> else:</pre></li>
- </ol>
- <ol class="context-line" start="84">
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> return self.cursor.execute(sql, params)</pre> <span>…</span></li>
- </ol>
- <ol class="post-context" id="post140549612777728" style="display: none;" start="85">
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre></pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> def _executemany(self, sql, param_list, *ignored_wrapper_args):</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> self.db.validate_no_broken_transaction()</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> with self.db.wrap_database_errors:</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre> return self.cursor.executemany(sql, param_list)</pre></li>
- <li onclick="toggle('pre140549612777728', 'post140549612777728')"><pre></pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140549612777728')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v140549612777728" style="display: none;">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>ignored_wrapper_args</td>
- <td class="code"><pre>(False,
- {'connection': <django.db.backends.postgresql.base.DatabaseWrapper object at 0x7fd441ceaa60>,
- 'cursor': <django.db.backends.utils.CursorDebugWrapper object at 0x7fd441bcffd0>})</pre></td>
- </tr>
- <tr>
- <td>params</td>
- <td class="code"><pre>('django',)</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.db.backends.utils.CursorDebugWrapper object at 0x7fd441bcffd0></pre></td>
- </tr>
- <tr>
- <td>sql</td>
- <td class="code"><pre>('SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", '
- '"auth_user"."is_superuser", "auth_user"."username", '
- '"auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", '
- '"auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" '
- 'FROM "auth_user" WHERE "auth_user"."username" = %s')</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- </ul>
- </div>
- <form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
- <div id="pastebinTraceback" class="pastebin" style="display: none;">
- <input type="hidden" name="language" value="PythonConsole">
- <input type="hidden" name="title" value="ProgrammingError at /admin/login/">
- <input type="hidden" name="source" value="Django Dpaste Agent">
- <input type="hidden" name="poster" value="Django">
- <textarea name="content" id="traceback_area" cols="140" rows="25">Environment:
- Request Method: POST
- Request URL: http://142.93.190.67/admin/login/?next=/admin/
- Django Version: 2.2.12
- Python Version: 3.8.2
- Installed Applications:
- ['django.contrib.admin',
- 'django.contrib.auth',
- 'django.contrib.contenttypes',
- 'django.contrib.sessions',
- 'django.contrib.messages',
- 'django.contrib.staticfiles']
- Installed Middleware:
- ['django.middleware.security.SecurityMiddleware',
- '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']
- Traceback:
- File "/usr/lib/python3/dist-packages/django/db/backends/utils.py" in _execute
- 84. return self.cursor.execute(sql, params)
- The above exception (relation "auth_user" does not exist
- LINE 1: ...user"."is_active", "auth_user"."date_joined" FROM "auth_user...
- ^
- ) was the direct cause of the following exception:
- File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py" in inner
- 34. response = get_response(request)
- File "/usr/lib/python3/dist-packages/django/core/handlers/base.py" in _get_response
- 115. response = self.process_exception_by_middleware(e, request)
- File "/usr/lib/python3/dist-packages/django/core/handlers/base.py" in _get_response
- 113. response = wrapped_callback(request, *callback_args, **callback_kwargs)
- File "/usr/lib/python3/dist-packages/django/views/decorators/cache.py" in _wrapped_view_func
- 44. response = view_func(request, *args, **kwargs)
- File "/usr/lib/python3/dist-packages/django/contrib/admin/sites.py" in login
- 399. return LoginView.as_view(**defaults)(request)
- File "/usr/lib/python3/dist-packages/django/views/generic/base.py" in view
- 71. return self.dispatch(request, *args, **kwargs)
- File "/usr/lib/python3/dist-packages/django/utils/decorators.py" in _wrapper
- 45. return bound_method(*args, **kwargs)
- File "/usr/lib/python3/dist-packages/django/views/decorators/debug.py" in sensitive_post_parameters_wrapper
- 76. return view(request, *args, **kwargs)
- File "/usr/lib/python3/dist-packages/django/utils/decorators.py" in _wrapper
- 45. return bound_method(*args, **kwargs)
- File "/usr/lib/python3/dist-packages/django/utils/decorators.py" in _wrapped_view
- 142. response = view_func(request, *args, **kwargs)
- File "/usr/lib/python3/dist-packages/django/utils/decorators.py" in _wrapper
- 45. return bound_method(*args, **kwargs)
- File "/usr/lib/python3/dist-packages/django/views/decorators/cache.py" in _wrapped_view_func
- 44. response = view_func(request, *args, **kwargs)
- File "/usr/lib/python3/dist-packages/django/contrib/auth/views.py" in dispatch
- 61. return super().dispatch(request, *args, **kwargs)
- File "/usr/lib/python3/dist-packages/django/views/generic/base.py" in dispatch
- 97. return handler(request, *args, **kwargs)
- File "/usr/lib/python3/dist-packages/django/views/generic/edit.py" in post
- 141. if form.is_valid():
- File "/usr/lib/python3/dist-packages/django/forms/forms.py" in is_valid
- 185. return self.is_bound and not self.errors
- File "/usr/lib/python3/dist-packages/django/forms/forms.py" in errors
- 180. self.full_clean()
- File "/usr/lib/python3/dist-packages/django/forms/forms.py" in full_clean
- 382. self._clean_form()
- File "/usr/lib/python3/dist-packages/django/forms/forms.py" in _clean_form
- 409. cleaned_data = self.clean()
- File "/usr/lib/python3/dist-packages/django/contrib/auth/forms.py" in clean
- 205. self.user_cache = authenticate(self.request, username=username, password=password)
- File "/usr/lib/python3/dist-packages/django/contrib/auth/__init__.py" in authenticate
- 73. user = backend.authenticate(request, **credentials)
- File "/usr/lib/python3/dist-packages/django/contrib/auth/backends.py" in authenticate
- 20. user = UserModel._default_manager.get_by_natural_key(username)
- File "/usr/lib/python3/dist-packages/django/contrib/auth/base_user.py" in get_by_natural_key
- 44. return self.get(**{self.model.USERNAME_FIELD: username})
- File "/usr/lib/python3/dist-packages/django/db/models/manager.py" in manager_method
- 82. return getattr(self.get_queryset(), name)(*args, **kwargs)
- File "/usr/lib/python3/dist-packages/django/db/models/query.py" in get
- 402. num = len(clone)
- File "/usr/lib/python3/dist-packages/django/db/models/query.py" in __len__
- 256. self._fetch_all()
- File "/usr/lib/python3/dist-packages/django/db/models/query.py" in _fetch_all
- 1242. self._result_cache = list(self._iterable_class(self))
- File "/usr/lib/python3/dist-packages/django/db/models/query.py" in __iter__
- 55. results = compiler.execute_sql(chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size)
- File "/usr/lib/python3/dist-packages/django/db/models/sql/compiler.py" in execute_sql
- 1140. cursor.execute(sql, params)
- File "/usr/lib/python3/dist-packages/django/db/backends/utils.py" in execute
- 99. return super().execute(sql, params)
- File "/usr/lib/python3/dist-packages/django/db/backends/utils.py" in execute
- 67. return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
- File "/usr/lib/python3/dist-packages/django/db/backends/utils.py" in _execute_with_wrappers
- 76. return executor(sql, params, many, context)
- File "/usr/lib/python3/dist-packages/django/db/backends/utils.py" in _execute
- 84. return self.cursor.execute(sql, params)
- File "/usr/lib/python3/dist-packages/django/db/utils.py" in __exit__
- 89. raise dj_exc_value.with_traceback(traceback) from exc_value
- File "/usr/lib/python3/dist-packages/django/db/backends/utils.py" in _execute
- 84. return self.cursor.execute(sql, params)
- Exception Type: ProgrammingError at /admin/login/
- Exception Value: relation "auth_user" does not exist
- LINE 1: ...user"."is_active", "auth_user"."date_joined" FROM "auth_user...
- ^
- </textarea>
- <br><br>
- <input type="submit" value="Share this traceback on a public website">
- </div>
- </form>
- </div>
- <div id="requestinfo">
- <h2>Request information</h2>
- <h3 id="user-info">USER</h3>
- <p>AnonymousUser</p>
- <h3 id="get-info">GET</h3>
- <table class="req">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>next</td>
- <td class="code"><pre>'/admin/'</pre></td>
- </tr>
- </tbody>
- </table>
- <h3 id="post-info">POST</h3>
- <table class="req">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>csrfmiddlewaretoken</td>
- <td class="code"><pre>'EIRuCvCtCiVTDpPYqFNJldDTsU4DnwCJSfkx1rQmUFtBSDuEUkrhSzrcSNiareqp'</pre></td>
- </tr>
- <tr>
- <td>username</td>
- <td class="code"><pre>'django'</pre></td>
- </tr>
- <tr>
- <td>password</td>
- <td class="code"><pre>'5d2acf03d2bb71199540d90828a10abd'</pre></td>
- </tr>
- <tr>
- <td>next</td>
- <td class="code"><pre>'/admin/'</pre></td>
- </tr>
- </tbody>
- </table>
- <h3 id="files-info">FILES</h3>
- <p>No FILES data</p>
- <h3 id="cookie-info">COOKIES</h3>
- <table class="req">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>csrftoken</td>
- <td class="code"><pre>'Oyap9rgoWJ4UDtafCE3UycR2EbYcz4TN25Dsynuhe6CCSHPV6jHs5yFl44cJDMHt'</pre></td>
- </tr>
- </tbody>
- </table>
- <h3 id="meta-info">META</h3>
- <table class="req">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>CONTENT_LENGTH</td>
- <td class="code"><pre>'159'</pre></td>
- </tr>
- <tr>
- <td>CONTENT_TYPE</td>
- <td class="code"><pre>'application/x-www-form-urlencoded'</pre></td>
- </tr>
- <tr>
- <td>CSRF_COOKIE</td>
- <td class="code"><pre>'Oyap9rgoWJ4UDtafCE3UycR2EbYcz4TN25Dsynuhe6CCSHPV6jHs5yFl44cJDMHt'</pre></td>
- </tr>
- <tr>
- <td>HTTP_ACCEPT</td>
- <td class="code"><pre>'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8'</pre></td>
- </tr>
- <tr>
- <td>HTTP_ACCEPT_ENCODING</td>
- <td class="code"><pre>'gzip, deflate'</pre></td>
- </tr>
- <tr>
- <td>HTTP_ACCEPT_LANGUAGE</td>
- <td class="code"><pre>'en-US,en;q=0.5'</pre></td>
- </tr>
- <tr>
- <td>HTTP_CONNECTION</td>
- <td class="code"><pre>'close'</pre></td>
- </tr>
- <tr>
- <td>HTTP_COOKIE</td>
- <td class="code"><pre>'csrftoken=Oyap9rgoWJ4UDtafCE3UycR2EbYcz4TN25Dsynuhe6CCSHPV6jHs5yFl44cJDMHt'</pre></td>
- </tr>
- <tr>
- <td>HTTP_DNT</td>
- <td class="code"><pre>'1'</pre></td>
- </tr>
- <tr>
- <td>HTTP_HOST</td>
- <td class="code"><pre>'142.93.190.67'</pre></td>
- </tr>
- <tr>
- <td>HTTP_ORIGIN</td>
- <td class="code"><pre>'http://142.93.190.67'</pre></td>
- </tr>
- <tr>
- <td>HTTP_REFERER</td>
- <td class="code"><pre>'http://142.93.190.67/admin/login/?next=/admin/'</pre></td>
- </tr>
- <tr>
- <td>HTTP_UPGRADE_INSECURE_REQUESTS</td>
- <td class="code"><pre>'1'</pre></td>
- </tr>
- <tr>
- <td>HTTP_USER_AGENT</td>
- <td class="code"><pre>'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:80.0) Gecko/20100101 Firefox/80.0'</pre></td>
- </tr>
- <tr>
- <td>HTTP_X_FORWARDED_FOR</td>
- <td class="code"><pre>'67.21.32.40'</pre></td>
- </tr>
- <tr>
- <td>PATH_INFO</td>
- <td class="code"><pre>'/admin/login/'</pre></td>
- </tr>
- <tr>
- <td>QUERY_STRING</td>
- <td class="code"><pre>'next=/admin/'</pre></td>
- </tr>
- <tr>
- <td>RAW_URI</td>
- <td class="code"><pre>'/admin/login/?next=/admin/'</pre></td>
- </tr>
- <tr>
- <td>REMOTE_ADDR</td>
- <td class="code"><pre>''</pre></td>
- </tr>
- <tr>
- <td>REQUEST_METHOD</td>
- <td class="code"><pre>'POST'</pre></td>
- </tr>
- <tr>
- <td>SCRIPT_NAME</td>
- <td class="code"><pre>''</pre></td>
- </tr>
- <tr>
- <td>SERVER_NAME</td>
- <td class="code"><pre>'142.93.190.67'</pre></td>
- </tr>
- <tr>
- <td>SERVER_PORT</td>
- <td class="code"><pre>'80'</pre></td>
- </tr>
- <tr>
- <td>SERVER_PROTOCOL</td>
- <td class="code"><pre>'HTTP/1.0'</pre></td>
- </tr>
- <tr>
- <td>SERVER_SOFTWARE</td>
- <td class="code"><pre>'gunicorn/20.0.4'</pre></td>
- </tr>
- <tr>
- <td>gunicorn.socket</td>
- <td class="code"><pre><gevent._socket3.socket object, fd=11, family=1, type=1, proto=0></pre></td>
- </tr>
- <tr>
- <td>wsgi.errors</td>
- <td class="code"><pre><gunicorn.http.wsgi.WSGIErrorsWrapper object at 0x7fd441c894c0></pre></td>
- </tr>
- <tr>
- <td>wsgi.file_wrapper</td>
- <td class="code"><pre>''</pre></td>
- </tr>
- <tr>
- <td>wsgi.input</td>
- <td class="code"><pre><gunicorn.http.body.Body object at 0x7fd441cdcf10></pre></td>
- </tr>
- <tr>
- <td>wsgi.input_terminated</td>
- <td class="code"><pre>True</pre></td>
- </tr>
- <tr>
- <td>wsgi.multiprocess</td>
- <td class="code"><pre>True</pre></td>
- </tr>
- <tr>
- <td>wsgi.multithread</td>
- <td class="code"><pre>True</pre></td>
- </tr>
- <tr>
- <td>wsgi.run_once</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>wsgi.url_scheme</td>
- <td class="code"><pre>'http'</pre></td>
- </tr>
- <tr>
- <td>wsgi.version</td>
- <td class="code"><pre>(1, 0)</pre></td>
- </tr>
- </tbody>
- </table>
- <h3 id="settings-info">Settings</h3>
- <h4>Using settings module <code>django_project.settings</code></h4>
- <table class="req">
- <thead>
- <tr>
- <th>Setting</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>ABSOLUTE_URL_OVERRIDES</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>ADMINS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>ALLOWED_HOSTS</td>
- <td class="code"><pre>['127.0.0.1', '::1', '142.93.190.67', 'fe80::88d0:cbff:feff:6c56%eth0']</pre></td>
- </tr>
- <tr>
- <td>APPEND_SLASH</td>
- <td class="code"><pre>True</pre></td>
- </tr>
- <tr>
- <td>AUTHENTICATION_BACKENDS</td>
- <td class="code"><pre>['django.contrib.auth.backends.ModelBackend']</pre></td>
- </tr>
- <tr>
- <td>AUTH_PASSWORD_VALIDATORS</td>
- <td class="code"><pre>'********************'</pre></td>
- </tr>
- <tr>
- <td>AUTH_USER_MODEL</td>
- <td class="code"><pre>'auth.User'</pre></td>
- </tr>
- <tr>
- <td>BASE_DIR</td>
- <td class="code"><pre>'/home/django/django_project'</pre></td>
- </tr>
- <tr>
- <td>CACHES</td>
- <td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}}</pre></td>
- </tr>
- <tr>
- <td>CACHE_MIDDLEWARE_ALIAS</td>
- <td class="code"><pre>'default'</pre></td>
- </tr>
- <tr>
- <td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
- <td class="code"><pre>'********************'</pre></td>
- </tr>
- <tr>
- <td>CACHE_MIDDLEWARE_SECONDS</td>
- <td class="code"><pre>600</pre></td>
- </tr>
- <tr>
- <td>CSRF_COOKIE_AGE</td>
- <td class="code"><pre>31449600</pre></td>
- </tr>
- <tr>
- <td>CSRF_COOKIE_DOMAIN</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>CSRF_COOKIE_HTTPONLY</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>CSRF_COOKIE_NAME</td>
- <td class="code"><pre>'csrftoken'</pre></td>
- </tr>
- <tr>
- <td>CSRF_COOKIE_PATH</td>
- <td class="code"><pre>'/'</pre></td>
- </tr>
- <tr>
- <td>CSRF_COOKIE_SAMESITE</td>
- <td class="code"><pre>'Lax'</pre></td>
- </tr>
- <tr>
- <td>CSRF_COOKIE_SECURE</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>CSRF_FAILURE_VIEW</td>
- <td class="code"><pre>'django.views.csrf.csrf_failure'</pre></td>
- </tr>
- <tr>
- <td>CSRF_HEADER_NAME</td>
- <td class="code"><pre>'HTTP_X_CSRFTOKEN'</pre></td>
- </tr>
- <tr>
- <td>CSRF_TRUSTED_ORIGINS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>CSRF_USE_SESSIONS</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>DATABASES</td>
- <td class="code"><pre>{'default': {'ATOMIC_REQUESTS': False,
- 'AUTOCOMMIT': True,
- 'CONN_MAX_AGE': 0,
- 'ENGINE': 'django.db.backends.postgresql_psycopg2',
- 'HOST': 'localhost',
- 'NAME': 'django',
- 'OPTIONS': {},
- 'PASSWORD': '********************',
- 'PORT': '',
- 'TEST': {'CHARSET': None,
- 'COLLATION': None,
- 'MIRROR': None,
- 'NAME': None},
- 'TIME_ZONE': None,
- 'USER': 'django'}}</pre></td>
- </tr>
- <tr>
- <td>DATABASE_ROUTERS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>DATA_UPLOAD_MAX_MEMORY_SIZE</td>
- <td class="code"><pre>2621440</pre></td>
- </tr>
- <tr>
- <td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td>
- <td class="code"><pre>1000</pre></td>
- </tr>
- <tr>
- <td>DATETIME_FORMAT</td>
- <td class="code"><pre>'N j, Y, P'</pre></td>
- </tr>
- <tr>
- <td>DATETIME_INPUT_FORMATS</td>
- <td class="code"><pre>['%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']</pre></td>
- </tr>
- <tr>
- <td>DATE_FORMAT</td>
- <td class="code"><pre>'N j, Y'</pre></td>
- </tr>
- <tr>
- <td>DATE_INPUT_FORMATS</td>
- <td class="code"><pre>['%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']</pre></td>
- </tr>
- <tr>
- <td>DEBUG</td>
- <td class="code"><pre>True</pre></td>
- </tr>
- <tr>
- <td>DEBUG_PROPAGATE_EXCEPTIONS</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>DECIMAL_SEPARATOR</td>
- <td class="code"><pre>'.'</pre></td>
- </tr>
- <tr>
- <td>DEFAULT_CHARSET</td>
- <td class="code"><pre>'utf-8'</pre></td>
- </tr>
- <tr>
- <td>DEFAULT_CONTENT_TYPE</td>
- <td class="code"><pre>'text/html'</pre></td>
- </tr>
- <tr>
- <td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
- <td class="code"><pre>'django.views.debug.SafeExceptionReporterFilter'</pre></td>
- </tr>
- <tr>
- <td>DEFAULT_FILE_STORAGE</td>
- <td class="code"><pre>'django.core.files.storage.FileSystemStorage'</pre></td>
- </tr>
- <tr>
- <td>DEFAULT_FROM_EMAIL</td>
- <td class="code"><pre>'webmaster@localhost'</pre></td>
- </tr>
- <tr>
- <td>DEFAULT_INDEX_TABLESPACE</td>
- <td class="code"><pre>''</pre></td>
- </tr>
- <tr>
- <td>DEFAULT_TABLESPACE</td>
- <td class="code"><pre>''</pre></td>
- </tr>
- <tr>
- <td>DISALLOWED_USER_AGENTS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>EMAIL_BACKEND</td>
- <td class="code"><pre>'django.core.mail.backends.smtp.EmailBackend'</pre></td>
- </tr>
- <tr>
- <td>EMAIL_HOST</td>
- <td class="code"><pre>'localhost'</pre></td>
- </tr>
- <tr>
- <td>EMAIL_HOST_PASSWORD</td>
- <td class="code"><pre>'********************'</pre></td>
- </tr>
- <tr>
- <td>EMAIL_HOST_USER</td>
- <td class="code"><pre>''</pre></td>
- </tr>
- <tr>
- <td>EMAIL_PORT</td>
- <td class="code"><pre>25</pre></td>
- </tr>
- <tr>
- <td>EMAIL_SSL_CERTFILE</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>EMAIL_SSL_KEYFILE</td>
- <td class="code"><pre>'********************'</pre></td>
- </tr>
- <tr>
- <td>EMAIL_SUBJECT_PREFIX</td>
- <td class="code"><pre>'[Django] '</pre></td>
- </tr>
- <tr>
- <td>EMAIL_TIMEOUT</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>EMAIL_USE_LOCALTIME</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>EMAIL_USE_SSL</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>EMAIL_USE_TLS</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>FILE_CHARSET</td>
- <td class="code"><pre>'utf-8'</pre></td>
- </tr>
- <tr>
- <td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>FILE_UPLOAD_HANDLERS</td>
- <td class="code"><pre>['django.core.files.uploadhandler.MemoryFileUploadHandler',
- 'django.core.files.uploadhandler.TemporaryFileUploadHandler']</pre></td>
- </tr>
- <tr>
- <td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
- <td class="code"><pre>2621440</pre></td>
- </tr>
- <tr>
- <td>FILE_UPLOAD_PERMISSIONS</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>FILE_UPLOAD_TEMP_DIR</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>FIRST_DAY_OF_WEEK</td>
- <td class="code"><pre>0</pre></td>
- </tr>
- <tr>
- <td>FIXTURE_DIRS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>FORCE_SCRIPT_NAME</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>FORMAT_MODULE_PATH</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>FORM_RENDERER</td>
- <td class="code"><pre>'django.forms.renderers.DjangoTemplates'</pre></td>
- </tr>
- <tr>
- <td>IGNORABLE_404_URLS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>INSTALLED_APPS</td>
- <td class="code"><pre>['django.contrib.admin',
- 'django.contrib.auth',
- 'django.contrib.contenttypes',
- 'django.contrib.sessions',
- 'django.contrib.messages',
- 'django.contrib.staticfiles']</pre></td>
- </tr>
- <tr>
- <td>INTERNAL_IPS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>LANGUAGES</td>
- <td class="code"><pre>[('af', 'Afrikaans'),
- ('ar', 'Arabic'),
- ('ast', 'Asturian'),
- ('az', 'Azerbaijani'),
- ('bg', 'Bulgarian'),
- ('be', 'Belarusian'),
- ('bn', 'Bengali'),
- ('br', 'Breton'),
- ('bs', 'Bosnian'),
- ('ca', 'Catalan'),
- ('cs', 'Czech'),
- ('cy', 'Welsh'),
- ('da', 'Danish'),
- ('de', 'German'),
- ('dsb', 'Lower Sorbian'),
- ('el', 'Greek'),
- ('en', 'English'),
- ('en-au', 'Australian English'),
- ('en-gb', 'British English'),
- ('eo', 'Esperanto'),
- ('es', 'Spanish'),
- ('es-ar', 'Argentinian Spanish'),
- ('es-co', 'Colombian Spanish'),
- ('es-mx', 'Mexican Spanish'),
- ('es-ni', 'Nicaraguan Spanish'),
- ('es-ve', 'Venezuelan Spanish'),
- ('et', 'Estonian'),
- ('eu', 'Basque'),
- ('fa', 'Persian'),
- ('fi', 'Finnish'),
- ('fr', 'French'),
- ('fy', 'Frisian'),
- ('ga', 'Irish'),
- ('gd', 'Scottish Gaelic'),
- ('gl', 'Galician'),
- ('he', 'Hebrew'),
- ('hi', 'Hindi'),
- ('hr', 'Croatian'),
- ('hsb', 'Upper Sorbian'),
- ('hu', 'Hungarian'),
- ('hy', 'Armenian'),
- ('ia', 'Interlingua'),
- ('id', 'Indonesian'),
- ('io', 'Ido'),
- ('is', 'Icelandic'),
- ('it', 'Italian'),
- ('ja', 'Japanese'),
- ('ka', 'Georgian'),
- ('kab', 'Kabyle'),
- ('kk', 'Kazakh'),
- ('km', 'Khmer'),
- ('kn', 'Kannada'),
- ('ko', 'Korean'),
- ('lb', 'Luxembourgish'),
- ('lt', 'Lithuanian'),
- ('lv', 'Latvian'),
- ('mk', 'Macedonian'),
- ('ml', 'Malayalam'),
- ('mn', 'Mongolian'),
- ('mr', 'Marathi'),
- ('my', 'Burmese'),
- ('nb', 'Norwegian Bokmål'),
- ('ne', 'Nepali'),
- ('nl', 'Dutch'),
- ('nn', 'Norwegian Nynorsk'),
- ('os', 'Ossetic'),
- ('pa', 'Punjabi'),
- ('pl', 'Polish'),
- ('pt', 'Portuguese'),
- ('pt-br', 'Brazilian Portuguese'),
- ('ro', 'Romanian'),
- ('ru', 'Russian'),
- ('sk', 'Slovak'),
- ('sl', 'Slovenian'),
- ('sq', 'Albanian'),
- ('sr', 'Serbian'),
- ('sr-latn', 'Serbian Latin'),
- ('sv', 'Swedish'),
- ('sw', 'Swahili'),
- ('ta', 'Tamil'),
- ('te', 'Telugu'),
- ('th', 'Thai'),
- ('tr', 'Turkish'),
- ('tt', 'Tatar'),
- ('udm', 'Udmurt'),
- ('uk', 'Ukrainian'),
- ('ur', 'Urdu'),
- ('vi', 'Vietnamese'),
- ('zh-hans', 'Simplified Chinese'),
- ('zh-hant', 'Traditional Chinese')]</pre></td>
- </tr>
- <tr>
- <td>LANGUAGES_BIDI</td>
- <td class="code"><pre>['he', 'ar', 'fa', 'ur']</pre></td>
- </tr>
- <tr>
- <td>LANGUAGE_CODE</td>
- <td class="code"><pre>'en-us'</pre></td>
- </tr>
- <tr>
- <td>LANGUAGE_COOKIE_AGE</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>LANGUAGE_COOKIE_DOMAIN</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>LANGUAGE_COOKIE_NAME</td>
- <td class="code"><pre>'django_language'</pre></td>
- </tr>
- <tr>
- <td>LANGUAGE_COOKIE_PATH</td>
- <td class="code"><pre>'/'</pre></td>
- </tr>
- <tr>
- <td>LOCALE_PATHS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>LOGGING</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>LOGGING_CONFIG</td>
- <td class="code"><pre>'logging.config.dictConfig'</pre></td>
- </tr>
- <tr>
- <td>LOGIN_REDIRECT_URL</td>
- <td class="code"><pre>'/accounts/profile/'</pre></td>
- </tr>
- <tr>
- <td>LOGIN_URL</td>
- <td class="code"><pre>'/accounts/login/'</pre></td>
- </tr>
- <tr>
- <td>LOGOUT_REDIRECT_URL</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>MANAGERS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>MEDIA_ROOT</td>
- <td class="code"><pre>''</pre></td>
- </tr>
- <tr>
- <td>MEDIA_URL</td>
- <td class="code"><pre>''</pre></td>
- </tr>
- <tr>
- <td>MESSAGE_STORAGE</td>
- <td class="code"><pre>'django.contrib.messages.storage.fallback.FallbackStorage'</pre></td>
- </tr>
- <tr>
- <td>MIDDLEWARE</td>
- <td class="code"><pre>['django.middleware.security.SecurityMiddleware',
- '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']</pre></td>
- </tr>
- <tr>
- <td>MIGRATION_MODULES</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>MONTH_DAY_FORMAT</td>
- <td class="code"><pre>'F j'</pre></td>
- </tr>
- <tr>
- <td>NUMBER_GROUPING</td>
- <td class="code"><pre>0</pre></td>
- </tr>
- <tr>
- <td>PASSWORD_HASHERS</td>
- <td class="code"><pre>'********************'</pre></td>
- </tr>
- <tr>
- <td>PASSWORD_RESET_TIMEOUT_DAYS</td>
- <td class="code"><pre>'********************'</pre></td>
- </tr>
- <tr>
- <td>PREPEND_WWW</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>ROOT_URLCONF</td>
- <td class="code"><pre>'django_project.urls'</pre></td>
- </tr>
- <tr>
- <td>SECRET_KEY</td>
- <td class="code"><pre>'********************'</pre></td>
- </tr>
- <tr>
- <td>SECURE_BROWSER_XSS_FILTER</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>SECURE_CONTENT_TYPE_NOSNIFF</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>SECURE_HSTS_PRELOAD</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>SECURE_HSTS_SECONDS</td>
- <td class="code"><pre>0</pre></td>
- </tr>
- <tr>
- <td>SECURE_PROXY_SSL_HEADER</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>SECURE_REDIRECT_EXEMPT</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>SECURE_SSL_HOST</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>SECURE_SSL_REDIRECT</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>SERVER_EMAIL</td>
- <td class="code"><pre>'root@localhost'</pre></td>
- </tr>
- <tr>
- <td>SESSION_CACHE_ALIAS</td>
- <td class="code"><pre>'default'</pre></td>
- </tr>
- <tr>
- <td>SESSION_COOKIE_AGE</td>
- <td class="code"><pre>1209600</pre></td>
- </tr>
- <tr>
- <td>SESSION_COOKIE_DOMAIN</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>SESSION_COOKIE_HTTPONLY</td>
- <td class="code"><pre>True</pre></td>
- </tr>
- <tr>
- <td>SESSION_COOKIE_NAME</td>
- <td class="code"><pre>'sessionid'</pre></td>
- </tr>
- <tr>
- <td>SESSION_COOKIE_PATH</td>
- <td class="code"><pre>'/'</pre></td>
- </tr>
- <tr>
- <td>SESSION_COOKIE_SAMESITE</td>
- <td class="code"><pre>'Lax'</pre></td>
- </tr>
- <tr>
- <td>SESSION_COOKIE_SECURE</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>SESSION_ENGINE</td>
- <td class="code"><pre>'django.contrib.sessions.backends.db'</pre></td>
- </tr>
- <tr>
- <td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>SESSION_FILE_PATH</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>SESSION_SAVE_EVERY_REQUEST</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>SESSION_SERIALIZER</td>
- <td class="code"><pre>'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
- </tr>
- <tr>
- <td>SETTINGS_MODULE</td>
- <td class="code"><pre>'django_project.settings'</pre></td>
- </tr>
- <tr>
- <td>SHORT_DATETIME_FORMAT</td>
- <td class="code"><pre>'m/d/Y P'</pre></td>
- </tr>
- <tr>
- <td>SHORT_DATE_FORMAT</td>
- <td class="code"><pre>'m/d/Y'</pre></td>
- </tr>
- <tr>
- <td>SIGNING_BACKEND</td>
- <td class="code"><pre>'django.core.signing.TimestampSigner'</pre></td>
- </tr>
- <tr>
- <td>SILENCED_SYSTEM_CHECKS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>STATICFILES_DIRS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>STATICFILES_FINDERS</td>
- <td class="code"><pre>['django.contrib.staticfiles.finders.FileSystemFinder',
- 'django.contrib.staticfiles.finders.AppDirectoriesFinder']</pre></td>
- </tr>
- <tr>
- <td>STATICFILES_STORAGE</td>
- <td class="code"><pre>'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
- </tr>
- <tr>
- <td>STATIC_ROOT</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>STATIC_URL</td>
- <td class="code"><pre>'/static/'</pre></td>
- </tr>
- <tr>
- <td>TEMPLATES</td>
- <td class="code"><pre>[{'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']}}]</pre></td>
- </tr>
- <tr>
- <td>TEST_NON_SERIALIZED_APPS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>TEST_RUNNER</td>
- <td class="code"><pre>'django.test.runner.DiscoverRunner'</pre></td>
- </tr>
- <tr>
- <td>THOUSAND_SEPARATOR</td>
- <td class="code"><pre>','</pre></td>
- </tr>
- <tr>
- <td>TIME_FORMAT</td>
- <td class="code"><pre>'P'</pre></td>
- </tr>
- <tr>
- <td>TIME_INPUT_FORMATS</td>
- <td class="code"><pre>['%H:%M:%S', '%H:%M:%S.%f', '%H:%M']</pre></td>
- </tr>
- <tr>
- <td>TIME_ZONE</td>
- <td class="code"><pre>'UTC'</pre></td>
- </tr>
- <tr>
- <td>USE_I18N</td>
- <td class="code"><pre>True</pre></td>
- </tr>
- <tr>
- <td>USE_L10N</td>
- <td class="code"><pre>True</pre></td>
- </tr>
- <tr>
- <td>USE_THOUSAND_SEPARATOR</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>USE_TZ</td>
- <td class="code"><pre>True</pre></td>
- </tr>
- <tr>
- <td>USE_X_FORWARDED_HOST</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>USE_X_FORWARDED_PORT</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>WSGI_APPLICATION</td>
- <td class="code"><pre>'django_project.wsgi.application'</pre></td>
- </tr>
- <tr>
- <td>X_FRAME_OPTIONS</td>
- <td class="code"><pre>'SAMEORIGIN'</pre></td>
- </tr>
- <tr>
- <td>YEAR_MONTH_FORMAT</td>
- <td class="code"><pre>'F Y'</pre></td>
- </tr>
- </tbody>
- </table>
- </div>
- <div id="explanation">
- <p>
- You're seeing this error because you have <code>DEBUG = True</code> in your
- Django settings file. Change that to <code>False</code>, and Django will
- display a standard page generated by the handler for this status code.
- </p>
- </div>
- </body></html>
Add Comment
Please, Sign In to add comment