Advertisement
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>AttributeError at /api/v1/clients/</title>
- <style type="text/css">
- html * { padding:0; margin:0; }
- body * { padding:10px 20px; }
- body * * { padding:0; }
- body { font:small sans-serif; }
- body>div { border-bottom:1px solid #ddd; }
- h1 { font-weight:normal; }
- h2 { margin-bottom:.8em; }
- h2 span { font-size:80%; color:#666; font-weight:normal; }
- 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:#666; }
- 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; }
- div.context ol li pre { display:inline; }
- div.context ol.context-line li { color:#505050; background-color:#dfdfdf; }
- 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 0 20px; }
- #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;}
- span.commands a:link {color:#5E5694;}
- pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
- </style>
- <script type="text/javascript">
- //<!--
- function getElementsByClassName(oElm, strTagName, strClassName){
- // Written by Jonathan Snook, http://www.snook.ca/jon; Add-ons by Robert Nyman, http://www.robertnyman.com
- var arrElements = (strTagName == "*" && document.all)? document.all :
- oElm.getElementsByTagName(strTagName);
- var arrReturnElements = new Array();
- strClassName = strClassName.replace(/\-/g, "\-");
- var oRegExp = new RegExp("(^|\s)" + strClassName + "(\s|$)");
- var oElement;
- for(var i=0; i<arrElements.length; i++){
- oElement = arrElements[i];
- if(oRegExp.test(oElement.className)){
- arrReturnElements.push(oElement);
- }
- }
- return (arrReturnElements)
- }
- function hideAll(elems) {
- for (var e = 0; e < elems.length; e++) {
- elems[e].style.display = 'none';
- }
- }
- window.onload = function() {
- hideAll(getElementsByClassName(document, 'table', 'vars'));
- hideAll(getElementsByClassName(document, 'ol', 'pre-context'));
- hideAll(getElementsByClassName(document, 'ol', 'post-context'));
- hideAll(getElementsByClassName(document, '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.innerHTML = s.innerHTML == uarr ? darr : uarr;
- return false;
- }
- function switchPastebinFriendly(link) {
- s1 = "Switch to copy-and-paste view";
- s2 = "Switch back to interactive view";
- link.innerHTML = link.innerHTML.trim() == s1 ? s2: s1;
- toggle('browserTraceback', 'pastebinTraceback');
- return false;
- }
- //-->
- </script>
- </head>
- <body>
- <div id="summary">
- <h1>AttributeError at /api/v1/clients/</h1>
- <pre class="exception_value">'dict' object has no attribute 'message'</pre>
- <table class="meta">
- <tr>
- <th>Request Method:</th>
- <td>POST</td>
- </tr>
- <tr>
- <th>Request URL:</th>
- <td>http://bellmera.redsolution.com/api/v1/clients/</td>
- </tr>
- <tr>
- <th>Django Version:</th>
- <td>1.8.12</td>
- </tr>
- <tr>
- <th>Exception Type:</th>
- <td>AttributeError</td>
- </tr>
- <tr>
- <th>Exception Value:</th>
- <td><pre>'dict' object has no attribute 'message'</pre></td>
- </tr>
- <tr>
- <th>Exception Location:</th>
- <td>/srv/bellmera-clients-api/.local/lib/python2.7/site-packages/bellmera_clients_api/views.py in create, line 54</td>
- </tr>
- <tr>
- <th>Python Executable:</th>
- <td>/usr/bin/python</td>
- </tr>
- <tr>
- <th>Python Version:</th>
- <td>2.7.9</td>
- </tr>
- <tr>
- <th>Python Path:</th>
- <td><pre>['/home/ilya.kalashnikov',
- '/usr/bin',
- '/usr/lib/python2.7',
- '/usr/lib/python2.7/plat-x86_64-linux-gnu',
- '/usr/lib/python2.7/lib-tk',
- '/usr/lib/python2.7/lib-old',
- '/usr/lib/python2.7/lib-dynload',
- '/srv/bellmera-clients-api/.local/lib/python2.7/site-packages',
- '/usr/local/lib/python2.7/dist-packages',
- '/usr/lib/python2.7/dist-packages']</pre></td>
- </tr>
- <tr>
- <th>Server time:</th>
- <td>Thu, 5 May 2016 07:43:33 +0000</td>
- </tr>
- </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/python2.7/dist-packages/django/core/handlers/base.py</code> in <code>get_response</code>
- <div class="context" id="c139916184375096">
- <ol start="125" class="pre-context" id="pre139916184375096">
- <li onclick="toggle('pre139916184375096', 'post139916184375096')"><pre> response = middleware_method(request, callback, callback_args, callback_kwargs)</pre></li>
- <li onclick="toggle('pre139916184375096', 'post139916184375096')"><pre> if response:</pre></li>
- <li onclick="toggle('pre139916184375096', 'post139916184375096')"><pre> break</pre></li>
- <li onclick="toggle('pre139916184375096', 'post139916184375096')"><pre></pre></li>
- <li onclick="toggle('pre139916184375096', 'post139916184375096')"><pre> if response is None:</pre></li>
- <li onclick="toggle('pre139916184375096', 'post139916184375096')"><pre> wrapped_callback = self.make_view_atomic(callback)</pre></li>
- <li onclick="toggle('pre139916184375096', 'post139916184375096')"><pre> try:</pre></li>
- </ol>
- <ol start="132" class="context-line">
- <li onclick="toggle('pre139916184375096', 'post139916184375096')"><pre>
- response = wrapped_callback(request, *callback_args, **callback_kwargs)</pre> <span>...</span></li></ol>
- <ol start='133' class="post-context" id="post139916184375096">
- <li onclick="toggle('pre139916184375096', 'post139916184375096')"><pre> except Exception as e:</pre></li>
- <li onclick="toggle('pre139916184375096', 'post139916184375096')"><pre> # If the view raised an exception, run it through exception</pre></li>
- <li onclick="toggle('pre139916184375096', 'post139916184375096')"><pre> # middleware, and if the exception middleware returns a</pre></li>
- <li onclick="toggle('pre139916184375096', 'post139916184375096')"><pre> # response, use that. Otherwise, reraise the exception.</pre></li>
- <li onclick="toggle('pre139916184375096', 'post139916184375096')"><pre> for middleware_method in self._exception_middleware:</pre></li>
- <li onclick="toggle('pre139916184375096', 'post139916184375096')"><pre> response = middleware_method(request, e)</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '139916184375096')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v139916184375096">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>e</td>
- <td class="code"><pre>AttributeError("'dict' object has no attribute 'message'",)</pre></td>
- </tr>
- <tr>
- <td>callback_args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>resolver_match</td>
- <td class="code"><pre>ResolverMatch(func=bellmera_clients_api.views.ClientsViewSet, args=(), kwargs={}, url_name=client_id-list, app_name=None, namespaces=[])</pre></td>
- </tr>
- <tr>
- <td>middleware_method</td>
- <td class="code"><pre><bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f40c6f2d7d0>></pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><django.core.handlers.wsgi.WSGIHandler object at 0x7f40c77d4750></pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre>"<WSGIRequest\npath:/api/v1/clients/,\nGET:<QueryDict: {}>,\nPOST:<could not parse>,\nCOOKIES:{},\nMETA:{'CONTENT_LENGTH': '108',\n 'CONTENT_TYPE': 'application/json',\n u'CSRF_COOKIE': u'l7fLeEeLAfc2bgfUY1uiLtwUXw8ZdiSx',\n 'HTTP_CONNECTION': 'close',\n 'HTTP_HOST': 'bellmera.redsolution.com',\n 'HTTP_X_FORWARDED_FOR': '95.78.162.156',\n 'HTTP_X_REAL_IP': '95.78.162.156',\n 'PATH_INFO': u'/api/v1/clients/',\n 'QUERY_STRING': '',\n 'RAW_URI': '/api/v1/clients/',\n 'REMOTE_ADDR': '127.0.0.1',\n 'REMOTE_PORT': '25859',\n 'REQUEST_METHOD': 'POST',\n 'SCRIPT_NAME': u'',\n 'SERVER_NAME': '127.0.0.1',\n 'SERVER_PORT': '8001',\n 'SERVER_PROTOCOL': 'HTTP/1.0',\n 'SERVER_SOFTWARE': 'gunicorn/19.0.0',\n 'gunicorn.socket': <socket._socketobject object at 0x7f40c6871830>,\n 'wsgi.errors': <gunicorn.http.wsgi.WSGIErrorsWraper object at 0x7f40c68007d0>,\n 'wsgi.file_wrapper': <class 'gunicorn.http.wsgi.FileWrapper'>,\n 'wsgi.input': <gunicorn.http.body.Body object at 0x7f40c68000d0>,\n 'wsgi.multiprocess': False,\n 'wsgi.multithread': False,\n 'wsgi.run_once': False,\n 'wsgi.url_scheme': 'http',\n 'wsgi.version': (1, 0)}>"</pre></td>
- </tr>
- <tr>
- <td>callback</td>
- <td class="code"><pre><function ClientsViewSet at 0x7f40c68821b8></pre></td>
- </tr>
- <tr>
- <td>wrapped_callback</td>
- <td class="code"><pre><function ClientsViewSet at 0x7f40c68821b8></pre></td>
- </tr>
- <tr>
- <td>resolver</td>
- <td class="code"><pre><RegexURLResolver u'bellmera_clients_api.urls' (None:None) ^/></pre></td>
- </tr>
- <tr>
- <td>callback_kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>response</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>urlconf</td>
- <td class="code"><pre>u'bellmera_clients_api.urls'</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/lib/python2.7/dist-packages/django/views/decorators/csrf.py</code> in <code>wrapped_view</code>
- <div class="context" id="c139916184374736">
- <ol start="51" class="pre-context" id="pre139916184374736">
- <li onclick="toggle('pre139916184374736', 'post139916184374736')"><pre> """</pre></li>
- <li onclick="toggle('pre139916184374736', 'post139916184374736')"><pre> Marks a view function as being exempt from the CSRF view protection.</pre></li>
- <li onclick="toggle('pre139916184374736', 'post139916184374736')"><pre> """</pre></li>
- <li onclick="toggle('pre139916184374736', 'post139916184374736')"><pre> # We could just do view_func.csrf_exempt = True, but decorators</pre></li>
- <li onclick="toggle('pre139916184374736', 'post139916184374736')"><pre> # are nicer if they don't have side-effects, so we return a new</pre></li>
- <li onclick="toggle('pre139916184374736', 'post139916184374736')"><pre> # function.</pre></li>
- <li onclick="toggle('pre139916184374736', 'post139916184374736')"><pre> def wrapped_view(*args, **kwargs):</pre></li>
- </ol>
- <ol start="58" class="context-line">
- <li onclick="toggle('pre139916184374736', 'post139916184374736')"><pre>
- return view_func(*args, **kwargs)</pre> <span>...</span></li></ol>
- <ol start='59' class="post-context" id="post139916184374736">
- <li onclick="toggle('pre139916184374736', 'post139916184374736')"><pre> wrapped_view.csrf_exempt = True</pre></li>
- <li onclick="toggle('pre139916184374736', 'post139916184374736')"><pre> return wraps(view_func, assigned=available_attrs(view_func))(wrapped_view)</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '139916184374736')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v139916184374736">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code"><pre>(<WSGIRequest: POST '/api/v1/clients/'>,)</pre></td>
- </tr>
- <tr>
- <td>view_func</td>
- <td class="code"><pre><function ClientsViewSet at 0x7f40c6870758></pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame user">
- <code>/srv/bellmera-clients-api/.local/lib/python2.7/site-packages/rest_framework/viewsets.py</code> in <code>view</code>
- <div class="context" id="c139916184374880">
- <ol start="80" class="pre-context" id="pre139916184374880">
- <li onclick="toggle('pre139916184374880', 'post139916184374880')"><pre> setattr(self, method, handler)</pre></li>
- <li onclick="toggle('pre139916184374880', 'post139916184374880')"><pre></pre></li>
- <li onclick="toggle('pre139916184374880', 'post139916184374880')"><pre> # Patch this in as it's otherwise only present from 1.5 onwards</pre></li>
- <li onclick="toggle('pre139916184374880', 'post139916184374880')"><pre> if hasattr(self, 'get') and not hasattr(self, 'head'):</pre></li>
- <li onclick="toggle('pre139916184374880', 'post139916184374880')"><pre> self.head = self.get</pre></li>
- <li onclick="toggle('pre139916184374880', 'post139916184374880')"><pre></pre></li>
- <li onclick="toggle('pre139916184374880', 'post139916184374880')"><pre> # And continue as usual</pre></li>
- </ol>
- <ol start="87" class="context-line">
- <li onclick="toggle('pre139916184374880', 'post139916184374880')"><pre>
- return self.dispatch(request, *args, **kwargs)</pre> <span>...</span></li></ol>
- <ol start='88' class="post-context" id="post139916184374880">
- <li onclick="toggle('pre139916184374880', 'post139916184374880')"><pre></pre></li>
- <li onclick="toggle('pre139916184374880', 'post139916184374880')"><pre> # take name and docstring from class</pre></li>
- <li onclick="toggle('pre139916184374880', 'post139916184374880')"><pre> update_wrapper(view, cls, updated=())</pre></li>
- <li onclick="toggle('pre139916184374880', 'post139916184374880')"><pre></pre></li>
- <li onclick="toggle('pre139916184374880', 'post139916184374880')"><pre> # and possible attributes set by decorators</pre></li>
- <li onclick="toggle('pre139916184374880', 'post139916184374880')"><pre> # like csrf_exempt from dispatch</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '139916184374880')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v139916184374880">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>initkwargs</td>
- <td class="code"><pre>{u'suffix': u'List'}</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><bellmera_clients_api.views.ClientsViewSet object at 0x7f40c68001d0></pre></td>
- </tr>
- <tr>
- <td>args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre>"<WSGIRequest\npath:/api/v1/clients/,\nGET:<QueryDict: {}>,\nPOST:<could not parse>,\nCOOKIES:{},\nMETA:{'CONTENT_LENGTH': '108',\n 'CONTENT_TYPE': 'application/json',\n u'CSRF_COOKIE': u'l7fLeEeLAfc2bgfUY1uiLtwUXw8ZdiSx',\n 'HTTP_CONNECTION': 'close',\n 'HTTP_HOST': 'bellmera.redsolution.com',\n 'HTTP_X_FORWARDED_FOR': '95.78.162.156',\n 'HTTP_X_REAL_IP': '95.78.162.156',\n 'PATH_INFO': u'/api/v1/clients/',\n 'QUERY_STRING': '',\n 'RAW_URI': '/api/v1/clients/',\n 'REMOTE_ADDR': '127.0.0.1',\n 'REMOTE_PORT': '25859',\n 'REQUEST_METHOD': 'POST',\n 'SCRIPT_NAME': u'',\n 'SERVER_NAME': '127.0.0.1',\n 'SERVER_PORT': '8001',\n 'SERVER_PROTOCOL': 'HTTP/1.0',\n 'SERVER_SOFTWARE': 'gunicorn/19.0.0',\n 'gunicorn.socket': <socket._socketobject object at 0x7f40c6871830>,\n 'wsgi.errors': <gunicorn.http.wsgi.WSGIErrorsWraper object at 0x7f40c68007d0>,\n 'wsgi.file_wrapper': <class 'gunicorn.http.wsgi.FileWrapper'>,\n 'wsgi.input': <gunicorn.http.body.Body object at 0x7f40c68000d0>,\n 'wsgi.multiprocess': False,\n 'wsgi.multithread': False,\n 'wsgi.run_once': False,\n 'wsgi.url_scheme': 'http',\n 'wsgi.version': (1, 0)}>"</pre></td>
- </tr>
- <tr>
- <td>actions</td>
- <td class="code"><pre>{u'post': u'create'}</pre></td>
- </tr>
- <tr>
- <td>handler</td>
- <td class="code"><pre><bound method ClientsViewSet.create of <bellmera_clients_api.views.ClientsViewSet object at 0x7f40c68001d0>></pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>action</td>
- <td class="code"><pre>u'create'</pre></td>
- </tr>
- <tr>
- <td>method</td>
- <td class="code"><pre>u'post'</pre></td>
- </tr>
- <tr>
- <td>cls</td>
- <td class="code"><pre><class 'bellmera_clients_api.views.ClientsViewSet'></pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame user">
- <code>/srv/bellmera-clients-api/.local/lib/python2.7/site-packages/rest_framework/views.py</code> in <code>dispatch</code>
- <div class="context" id="c139916184373224">
- <ol start="459" class="pre-context" id="pre139916184373224">
- <li onclick="toggle('pre139916184373224', 'post139916184373224')"><pre> self.http_method_not_allowed)</pre></li>
- <li onclick="toggle('pre139916184373224', 'post139916184373224')"><pre> else:</pre></li>
- <li onclick="toggle('pre139916184373224', 'post139916184373224')"><pre> handler = self.http_method_not_allowed</pre></li>
- <li onclick="toggle('pre139916184373224', 'post139916184373224')"><pre></pre></li>
- <li onclick="toggle('pre139916184373224', 'post139916184373224')"><pre> response = handler(request, *args, **kwargs)</pre></li>
- <li onclick="toggle('pre139916184373224', 'post139916184373224')"><pre></pre></li>
- <li onclick="toggle('pre139916184373224', 'post139916184373224')"><pre> except Exception as exc:</pre></li>
- </ol>
- <ol start="466" class="context-line">
- <li onclick="toggle('pre139916184373224', 'post139916184373224')"><pre>
- response = self.handle_exception(exc)</pre> <span>...</span></li></ol>
- <ol start='467' class="post-context" id="post139916184373224">
- <li onclick="toggle('pre139916184373224', 'post139916184373224')"><pre></pre></li>
- <li onclick="toggle('pre139916184373224', 'post139916184373224')"><pre> self.response = self.finalize_response(request, response, *args, **kwargs)</pre></li>
- <li onclick="toggle('pre139916184373224', 'post139916184373224')"><pre> return self.response</pre></li>
- <li onclick="toggle('pre139916184373224', 'post139916184373224')"><pre></pre></li>
- <li onclick="toggle('pre139916184373224', 'post139916184373224')"><pre> def options(self, request, *args, **kwargs):</pre></li>
- <li onclick="toggle('pre139916184373224', 'post139916184373224')"><pre> """</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '139916184373224')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v139916184373224">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>exc</td>
- <td class="code"><pre>AttributeError("'dict' object has no attribute 'message'",)</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><bellmera_clients_api.views.ClientsViewSet object at 0x7f40c68001d0></pre></td>
- </tr>
- <tr>
- <td>args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><rest_framework.request.Request object at 0x7f40c67ce710></pre></td>
- </tr>
- <tr>
- <td>handler</td>
- <td class="code"><pre><bound method ClientsViewSet.create of <bellmera_clients_api.views.ClientsViewSet object at 0x7f40c68001d0>></pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame user">
- <code>/srv/bellmera-clients-api/.local/lib/python2.7/site-packages/rest_framework/views.py</code> in <code>dispatch</code>
- <div class="context" id="c139916184371784">
- <ol start="456" class="pre-context" id="pre139916184371784">
- <li onclick="toggle('pre139916184371784', 'post139916184371784')"><pre> # Get the appropriate handler method</pre></li>
- <li onclick="toggle('pre139916184371784', 'post139916184371784')"><pre> if request.method.lower() in self.http_method_names:</pre></li>
- <li onclick="toggle('pre139916184371784', 'post139916184371784')"><pre> handler = getattr(self, request.method.lower(),</pre></li>
- <li onclick="toggle('pre139916184371784', 'post139916184371784')"><pre> self.http_method_not_allowed)</pre></li>
- <li onclick="toggle('pre139916184371784', 'post139916184371784')"><pre> else:</pre></li>
- <li onclick="toggle('pre139916184371784', 'post139916184371784')"><pre> handler = self.http_method_not_allowed</pre></li>
- <li onclick="toggle('pre139916184371784', 'post139916184371784')"><pre></pre></li>
- </ol>
- <ol start="463" class="context-line">
- <li onclick="toggle('pre139916184371784', 'post139916184371784')"><pre>
- response = handler(request, *args, **kwargs)</pre> <span>...</span></li></ol>
- <ol start='464' class="post-context" id="post139916184371784">
- <li onclick="toggle('pre139916184371784', 'post139916184371784')"><pre></pre></li>
- <li onclick="toggle('pre139916184371784', 'post139916184371784')"><pre> except Exception as exc:</pre></li>
- <li onclick="toggle('pre139916184371784', 'post139916184371784')"><pre> response = self.handle_exception(exc)</pre></li>
- <li onclick="toggle('pre139916184371784', 'post139916184371784')"><pre></pre></li>
- <li onclick="toggle('pre139916184371784', 'post139916184371784')"><pre> self.response = self.finalize_response(request, response, *args, **kwargs)</pre></li>
- <li onclick="toggle('pre139916184371784', 'post139916184371784')"><pre> return self.response</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '139916184371784')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v139916184371784">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>exc</td>
- <td class="code"><pre>AttributeError("'dict' object has no attribute 'message'",)</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><bellmera_clients_api.views.ClientsViewSet object at 0x7f40c68001d0></pre></td>
- </tr>
- <tr>
- <td>args</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><rest_framework.request.Request object at 0x7f40c67ce710></pre></td>
- </tr>
- <tr>
- <td>handler</td>
- <td class="code"><pre><bound method ClientsViewSet.create of <bellmera_clients_api.views.ClientsViewSet object at 0x7f40c68001d0>></pre></td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame user">
- <code>/srv/bellmera-clients-api/.local/lib/python2.7/site-packages/bellmera_clients_api/views.py</code> in <code>create</code>
- <div class="context" id="c139916184373296">
- <ol start="47" class="pre-context" id="pre139916184373296">
- <li onclick="toggle('pre139916184373296', 'post139916184373296')"><pre> "Found {} master accounts.".format(len(conn.response))},</pre></li>
- <li onclick="toggle('pre139916184373296', 'post139916184373296')"><pre> status=HTTP_400_BAD_REQUEST)</pre></li>
- <li onclick="toggle('pre139916184373296', 'post139916184373296')"><pre></pre></li>
- <li onclick="toggle('pre139916184373296', 'post139916184373296')"><pre> account_dn = conn.response[0]['dn']</pre></li>
- <li onclick="toggle('pre139916184373296', 'post139916184373296')"><pre> if not conn.add(**query_params(settings.LDAP['addDevice'],</pre></li>
- <li onclick="toggle('pre139916184373296', 'post139916184373296')"><pre> **locals())):</pre></li>
- <li onclick="toggle('pre139916184373296', 'post139916184373296')"><pre> # TODO: log error</pre></li>
- </ol>
- <ol start="54" class="context-line">
- <li onclick="toggle('pre139916184373296', 'post139916184373296')"><pre>
- return Response({'detail': conn.result.message},</pre> <span>...</span></li></ol>
- <ol start='55' class="post-context" id="post139916184373296">
- <li onclick="toggle('pre139916184373296', 'post139916184373296')"><pre> status=HTTP_400_BAD_REQUEST)</pre></li>
- <li onclick="toggle('pre139916184373296', 'post139916184373296')"><pre></pre></li>
- <li onclick="toggle('pre139916184373296', 'post139916184373296')"><pre> pincode = '012345'</pre></li>
- <li onclick="toggle('pre139916184373296', 'post139916184373296')"><pre> if not conn.add(**query_params(settings.LDAP['addVerificationCode'],</pre></li>
- <li onclick="toggle('pre139916184373296', 'post139916184373296')"><pre> **locals())):</pre></li>
- <li onclick="toggle('pre139916184373296', 'post139916184373296')"><pre> # TODO: log error</pre></li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '139916184373296')"><span>▶</span> Local vars</a>
- </div>
- <table class="vars" id="v139916184373296">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>description</td>
- <td class="code"><pre>u'Bellmera Android 0.1 on Nexus 5X Android SDK 23'</pre></td>
- </tr>
- <tr>
- <td>mobile</td>
- <td class="code"><pre>u'+79220150112'</pre></td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code"><pre><bellmera_clients_api.views.ClientsViewSet object at 0x7f40c68001d0></pre></td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code"><pre><rest_framework.request.Request object at 0x7f40c67ce710></pre></td>
- </tr>
- <tr>
- <td>serializer</td>
- <td class="code"><pre>ClientSerializer(data={u'phone_number': u'+79220150112', u'description': u'Bellmera Android 0.1 on Nexus 5X Android SDK 23'}):
- username = CharField(default='', required=False)
- phone_number = CharField(default='', required=False)
- client_id = CharField(default=None, read_only=True)
- description = CharField(required=True)</pre></td>
- </tr>
- <tr>
- <td>client_id</td>
- <td class="code"><pre>UUID('e835735a-16f2-4cd6-9d2b-8486bff2d79d')</pre></td>
- </tr>
- <tr>
- <td>account_dn</td>
- <td class="code"><pre>u'uid=grigory.fedorov,ou=Accounts,dc=bellmera,dc=com'</pre></td>
- </tr>
- <tr>
- <td>conn</td>
- <td class="code"><pre>Connection(server=Server(host='localhost', port=1389, use_ssl=False, allowed_referral_hosts=[('*', True)], get_info='NO_INFO'), user='cn=bellmera-clients-api,dc=bellmera,dc=com', password='Achech8jon3x', auto_bind='NONE', version=3, authentication='SIMPLE', client_strategy='SYNC', auto_referrals=True, check_names=True, read_only=False, lazy=False, raise_exceptions=False, fast_decoder=TrueFalse)</pre></td>
- </tr>
- <tr>
- <td>uid</td>
- <td class="code"><pre>u''</pre></td>
- </tr>
- </tbody>
- </table>
- </li>
- </ul>
- </div>
- <form action="http://dpaste.com/" name="pasteform" id="pasteform" method="post">
- <div id="pastebinTraceback" class="pastebin">
- <input type="hidden" name="language" value="PythonConsole">
- <input type="hidden" name="title"
- value="AttributeError at /api/v1/clients/">
- <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://bellmera.redsolution.com/api/v1/clients/
- Django Version: 1.8.12
- Python Version: 2.7.9
- Installed Applications:
- (u'django.contrib.admin',
- u'django.contrib.auth',
- u'django.contrib.contenttypes',
- u'django.contrib.sessions',
- u'django.contrib.messages',
- u'django.contrib.staticfiles',
- u'rest_framework')
- Installed Middleware:
- (u'django.contrib.sessions.middleware.SessionMiddleware',
- u'django.middleware.common.CommonMiddleware',
- u'django.middleware.csrf.CsrfViewMiddleware',
- u'django.contrib.auth.middleware.AuthenticationMiddleware',
- u'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
- u'django.contrib.messages.middleware.MessageMiddleware',
- u'django.middleware.clickjacking.XFrameOptionsMiddleware',
- u'django.middleware.security.SecurityMiddleware')
- Traceback:
- File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response
- 132. response = wrapped_callback(request, *callback_args, **callback_kwargs)
- File "/usr/lib/python2.7/dist-packages/django/views/decorators/csrf.py" in wrapped_view
- 58. return view_func(*args, **kwargs)
- File "/srv/bellmera-clients-api/.local/lib/python2.7/site-packages/rest_framework/viewsets.py" in view
- 87. return self.dispatch(request, *args, **kwargs)
- File "/srv/bellmera-clients-api/.local/lib/python2.7/site-packages/rest_framework/views.py" in dispatch
- 466. response = self.handle_exception(exc)
- File "/srv/bellmera-clients-api/.local/lib/python2.7/site-packages/rest_framework/views.py" in dispatch
- 463. response = handler(request, *args, **kwargs)
- File "/srv/bellmera-clients-api/.local/lib/python2.7/site-packages/bellmera_clients_api/views.py" in create
- 54. return Response({'detail': conn.result.message},
- Exception Type: AttributeError at /api/v1/clients/
- Exception Value: 'dict' object has no attribute 'message'
- </textarea>
- <br><br>
- <input type="submit" value="Share this traceback on a public Web site">
- </div>
- </form>
- </div>
- <div id="requestinfo">
- <h2>Request information</h2>
- <h3 id="get-info">GET</h3>
- <p>No GET data</p>
- <h3 id="post-info">POST</h3>
- <p>No POST data</p>
- <h3 id="files-info">FILES</h3>
- <p>No FILES data</p>
- <h3 id="cookie-info">COOKIES</h3>
- <p>No cookie data</p>
- <h3 id="meta-info">META</h3>
- <table class="req">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>wsgi.multiprocess</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>SERVER_SOFTWARE</td>
- <td class="code"><pre>'gunicorn/19.0.0'</pre></td>
- </tr>
- <tr>
- <td>SCRIPT_NAME</td>
- <td class="code"><pre>u''</pre></td>
- </tr>
- <tr>
- <td>REQUEST_METHOD</td>
- <td class="code"><pre>'POST'</pre></td>
- </tr>
- <tr>
- <td>PATH_INFO</td>
- <td class="code"><pre>u'/api/v1/clients/'</pre></td>
- </tr>
- <tr>
- <td>SERVER_PROTOCOL</td>
- <td class="code"><pre>'HTTP/1.0'</pre></td>
- </tr>
- <tr>
- <td>QUERY_STRING</td>
- <td class="code"><pre>''</pre></td>
- </tr>
- <tr>
- <td>HTTP_X_REAL_IP</td>
- <td class="code"><pre>'95.78.162.156'</pre></td>
- </tr>
- <tr>
- <td>CONTENT_LENGTH</td>
- <td class="code"><pre>'108'</pre></td>
- </tr>
- <tr>
- <td>HTTP_CONNECTION</td>
- <td class="code"><pre>'close'</pre></td>
- </tr>
- <tr>
- <td>SERVER_NAME</td>
- <td class="code"><pre>'127.0.0.1'</pre></td>
- </tr>
- <tr>
- <td>REMOTE_PORT</td>
- <td class="code"><pre>'25859'</pre></td>
- </tr>
- <tr>
- <td>wsgi.url_scheme</td>
- <td class="code"><pre>'http'</pre></td>
- </tr>
- <tr>
- <td>SERVER_PORT</td>
- <td class="code"><pre>'8001'</pre></td>
- </tr>
- <tr>
- <td>wsgi.input</td>
- <td class="code"><pre><gunicorn.http.body.Body object at 0x7f40c68000d0></pre></td>
- </tr>
- <tr>
- <td>HTTP_HOST</td>
- <td class="code"><pre>'bellmera.redsolution.com'</pre></td>
- </tr>
- <tr>
- <td>wsgi.multithread</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>wsgi.version</td>
- <td class="code"><pre>(1, 0)</pre></td>
- </tr>
- <tr>
- <td>RAW_URI</td>
- <td class="code"><pre>'/api/v1/clients/'</pre></td>
- </tr>
- <tr>
- <td>wsgi.run_once</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>wsgi.errors</td>
- <td class="code"><pre><gunicorn.http.wsgi.WSGIErrorsWraper object at 0x7f40c68007d0></pre></td>
- </tr>
- <tr>
- <td>REMOTE_ADDR</td>
- <td class="code"><pre>'127.0.0.1'</pre></td>
- </tr>
- <tr>
- <td>gunicorn.socket</td>
- <td class="code"><pre><socket._socketobject object at 0x7f40c6871830></pre></td>
- </tr>
- <tr>
- <td>CONTENT_TYPE</td>
- <td class="code"><pre>'application/json'</pre></td>
- </tr>
- <tr>
- <td>HTTP_X_FORWARDED_FOR</td>
- <td class="code"><pre>'95.78.162.156'</pre></td>
- </tr>
- <tr>
- <td>wsgi.file_wrapper</td>
- <td class="code"><pre>''</pre></td>
- </tr>
- <tr>
- <td>CSRF_COOKIE</td>
- <td class="code"><pre>u'l7fLeEeLAfc2bgfUY1uiLtwUXw8ZdiSx'</pre></td>
- </tr>
- </tbody>
- </table>
- <h3 id="settings-info">Settings</h3>
- <h4>Using settings module <code>bellmera_clients_api.settings</code></h4>
- <table class="req">
- <thead>
- <tr>
- <th>Setting</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>SECURE_BROWSER_XSS_FILTER</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>USE_THOUSAND_SEPARATOR</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>CSRF_COOKIE_SECURE</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>LANGUAGE_CODE</td>
- <td class="code"><pre>u'en-us'</pre></td>
- </tr>
- <tr>
- <td>ROOT_URLCONF</td>
- <td class="code"><pre>u'bellmera_clients_api.urls'</pre></td>
- </tr>
- <tr>
- <td>MANAGERS</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>BASE_DIR</td>
- <td class="code"><pre>'/srv/bellmera-clients-api/.local/lib/python2.7/site-packages'</pre></td>
- </tr>
- <tr>
- <td>SILENCED_SYSTEM_CHECKS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>DEFAULT_CHARSET</td>
- <td class="code"><pre>'utf-8'</pre></td>
- </tr>
- <tr>
- <td>SESSION_SERIALIZER</td>
- <td class="code"><pre>'django.contrib.sessions.serializers.JSONSerializer'</pre></td>
- </tr>
- <tr>
- <td>STATIC_ROOT</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>ALLOWED_HOSTS</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>EMAIL_SUBJECT_PREFIX</td>
- <td class="code"><pre>'[Django] '</pre></td>
- </tr>
- <tr>
- <td>SERVER_EMAIL</td>
- <td class="code"><pre>'root@localhost'</pre></td>
- </tr>
- <tr>
- <td>SECURE_HSTS_SECONDS</td>
- <td class="code"><pre>0</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>SESSION_CACHE_ALIAS</td>
- <td class="code"><pre>'default'</pre></td>
- </tr>
- <tr>
- <td>SESSION_COOKIE_DOMAIN</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>SESSION_COOKIE_NAME</td>
- <td class="code"><pre>'sessionid'</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>SECURE_REDIRECT_EXEMPT</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>DATABASES</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>EMAIL_SSL_KEYFILE</td>
- <td class="code"><pre>u'********************'</pre></td>
- </tr>
- <tr>
- <td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>FILE_UPLOAD_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>DEFAULT_CONTENT_TYPE</td>
- <td class="code"><pre>'text/html'</pre></td>
- </tr>
- <tr>
- <td>APPEND_SLASH</td>
- <td class="code"><pre>True</pre></td>
- </tr>
- <tr>
- <td>LOCALE_PATHS</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>DATABASE_ROUTERS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>DEFAULT_TABLESPACE</td>
- <td class="code"><pre>''</pre></td>
- </tr>
- <tr>
- <td>LDAP</td>
- <td class="code"><pre>{'addDevice': {'attributes': {'description': '{description}',
- 'owner': '{account_dn}',
- 'uid': '{uid}'},
- 'dn': 'cn={client_id},ou=Devices,dc=bellmera,dc=com',
- 'object_class': ['top', 'device', 'extensibleObject']},
- 'addVerificationCode': {'attributes': {'uid': '{uid}',
- 'userPassword': '{pincode}'},
- 'dn': 'cn={client_id},ou=Verification codes,dc=bellmera,dc=com',
- 'object_class': ['top',
- 'organizationalRole',
- 'simpleSecurityObject',
- 'uidObject']},
- 'connection': {'password': 'Achech8jon3x',
- 'server': 'localhost:1389',
- 'user': 'cn=bellmera-clients-api,dc=bellmera,dc=com'},
- 'searchDevice': {'attributes': '*',
- 'search_base': 'ou=Devices,dc=bellmera,dc=com',
- 'search_filter': '(&(objectClass=device)(cn={client_id}))'},
- 'searchMasterAccountByUID': {'search_base': 'ou=Accounts,dc=bellmera,dc=com',
- 'search_filter': '(&(objectClass=inetOrgPerson)(|(uid={uid})(mobile={mobile})))'},
- 'searchVerificationCode': {'attributes': '*',
- 'search_base': 'ou=Verification codes,dc=bellmera,dc=com',
- 'search_filter': '(&(objectClass=simpleSecurityObject)(cn={client_id}))'},
- 'searchVerificationCodeByUID': {'attributes': '*',
- 'search_base': 'ou=Verification codes,dc=bellmera,dc=com',
- 'search_filter': '(&(objectClass=simpleSecurityObject)(uid={uid}))'}}</pre></td>
- </tr>
- <tr>
- <td>YEAR_MONTH_FORMAT</td>
- <td class="code"><pre>'F Y'</pre></td>
- </tr>
- <tr>
- <td>STATICFILES_STORAGE</td>
- <td class="code"><pre>'django.contrib.staticfiles.storage.StaticFilesStorage'</pre></td>
- </tr>
- <tr>
- <td>CACHES</td>
- <td class="code"><pre>{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}}</pre></td>
- </tr>
- <tr>
- <td>SESSION_COOKIE_PATH</td>
- <td class="code"><pre>'/'</pre></td>
- </tr>
- <tr>
- <td>SECURE_CONTENT_TYPE_NOSNIFF</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>MIDDLEWARE_CLASSES</td>
- <td class="code"><pre>(u'django.contrib.sessions.middleware.SessionMiddleware',
- u'django.middleware.common.CommonMiddleware',
- u'django.middleware.csrf.CsrfViewMiddleware',
- u'django.contrib.auth.middleware.AuthenticationMiddleware',
- u'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
- u'django.contrib.messages.middleware.MessageMiddleware',
- u'django.middleware.clickjacking.XFrameOptionsMiddleware',
- u'django.middleware.security.SecurityMiddleware')</pre></td>
- </tr>
- <tr>
- <td>USE_I18N</td>
- <td class="code"><pre>True</pre></td>
- </tr>
- <tr>
- <td>THOUSAND_SEPARATOR</td>
- <td class="code"><pre>','</pre></td>
- </tr>
- <tr>
- <td>SECRET_KEY</td>
- <td class="code"><pre>u'********************'</pre></td>
- </tr>
- <tr>
- <td>LANGUAGE_COOKIE_NAME</td>
- <td class="code"><pre>'django_language'</pre></td>
- </tr>
- <tr>
- <td>DEFAULT_INDEX_TABLESPACE</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>XDG_RESOURCE</td>
- <td class="code"><pre>u'bellmera'</pre></td>
- </tr>
- <tr>
- <td>TEMPLATE_LOADERS</td>
- <td class="code"><pre>('django.template.loaders.filesystem.Loader',
- 'django.template.loaders.app_directories.Loader')</pre></td>
- </tr>
- <tr>
- <td>FIRST_DAY_OF_WEEK</td>
- <td class="code"><pre>0</pre></td>
- </tr>
- <tr>
- <td>WSGI_APPLICATION</td>
- <td class="code"><pre>u'bellmera_clients_api.wsgi.application'</pre></td>
- </tr>
- <tr>
- <td>TEMPLATE_DEBUG</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>X_FRAME_OPTIONS</td>
- <td class="code"><pre>'SAMEORIGIN'</pre></td>
- </tr>
- <tr>
- <td>CSRF_COOKIE_NAME</td>
- <td class="code"><pre>'csrftoken'</pre></td>
- </tr>
- <tr>
- <td>FORCE_SCRIPT_NAME</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>USE_X_FORWARDED_HOST</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>EMAIL_TIMEOUT</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>SECURE_SSL_HOST</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>SIGNING_BACKEND</td>
- <td class="code"><pre>'django.core.signing.TimestampSigner'</pre></td>
- </tr>
- <tr>
- <td>SESSION_COOKIE_SECURE</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>CSRF_COOKIE_DOMAIN</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>FILE_CHARSET</td>
- <td class="code"><pre>'utf-8'</pre></td>
- </tr>
- <tr>
- <td>DEBUG</td>
- <td class="code"><pre>True</pre></td>
- </tr>
- <tr>
- <td>LANGUAGE_COOKIE_DOMAIN</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>DEFAULT_FILE_STORAGE</td>
- <td class="code"><pre>'django.core.files.storage.FileSystemStorage'</pre></td>
- </tr>
- <tr>
- <td>INSTALLED_APPS</td>
- <td class="code"><pre>(u'django.contrib.admin',
- u'django.contrib.auth',
- u'django.contrib.contenttypes',
- u'django.contrib.sessions',
- u'django.contrib.messages',
- u'django.contrib.staticfiles',
- u'rest_framework')</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'),
- ('el', 'Greek'),
- ('en', 'English'),
- ('en-au', 'Australian English'),
- ('en-gb', 'British English'),
- ('eo', 'Esperanto'),
- ('es', 'Spanish'),
- ('es-ar', 'Argentinian 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'),
- ('gl', 'Galician'),
- ('he', 'Hebrew'),
- ('hi', 'Hindi'),
- ('hr', 'Croatian'),
- ('hu', 'Hungarian'),
- ('ia', 'Interlingua'),
- ('id', 'Indonesian'),
- ('io', 'Ido'),
- ('is', 'Icelandic'),
- ('it', 'Italian'),
- ('ja', 'Japanese'),
- ('ka', 'Georgian'),
- ('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 Bokmal'),
- ('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-cn', 'Simplified Chinese'),
- ('zh-hans', 'Simplified Chinese'),
- ('zh-hant', 'Traditional Chinese'),
- ('zh-tw', 'Traditional Chinese'))</pre></td>
- </tr>
- <tr>
- <td>USE_L10N</td>
- <td class="code"><pre>True</pre></td>
- </tr>
- <tr>
- <td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>STATICFILES_DIRS</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>PREPEND_WWW</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>SECURE_PROXY_SSL_HEADER</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>LANGUAGE_COOKIE_AGE</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>DEBUG_PROPAGATE_EXCEPTIONS</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>CSRF_COOKIE_AGE</td>
- <td class="code"><pre>31449600</pre></td>
- </tr>
- <tr>
- <td>MONTH_DAY_FORMAT</td>
- <td class="code"><pre>'F j'</pre></td>
- </tr>
- <tr>
- <td>LOGIN_URL</td>
- <td class="code"><pre>'/accounts/login/'</pre></td>
- </tr>
- <tr>
- <td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>TIME_FORMAT</td>
- <td class="code"><pre>'P'</pre></td>
- </tr>
- <tr>
- <td>AUTH_USER_MODEL</td>
- <td class="code"><pre>'auth.User'</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>AUTHENTICATION_BACKENDS</td>
- <td class="code"><pre>('django.contrib.auth.backends.ModelBackend',)</pre></td>
- </tr>
- <tr>
- <td>EMAIL_HOST_PASSWORD</td>
- <td class="code"><pre>u'********************'</pre></td>
- </tr>
- <tr>
- <td>PASSWORD_RESET_TIMEOUT_DAYS</td>
- <td class="code"><pre>u'********************'</pre></td>
- </tr>
- <tr>
- <td>SESSION_FILE_PATH</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>CACHE_MIDDLEWARE_ALIAS</td>
- <td class="code"><pre>'default'</pre></td>
- </tr>
- <tr>
- <td>SESSION_SAVE_EVERY_REQUEST</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>NUMBER_GROUPING</td>
- <td class="code"><pre>0</pre></td>
- </tr>
- <tr>
- <td>SESSION_ENGINE</td>
- <td class="code"><pre>'django.contrib.sessions.backends.db'</pre></td>
- </tr>
- <tr>
- <td>CSRF_FAILURE_VIEW</td>
- <td class="code"><pre>'django.views.csrf.csrf_failure'</pre></td>
- </tr>
- <tr>
- <td>CSRF_COOKIE_PATH</td>
- <td class="code"><pre>'/'</pre></td>
- </tr>
- <tr>
- <td>LOGIN_REDIRECT_URL</td>
- <td class="code"><pre>'/accounts/profile/'</pre></td>
- </tr>
- <tr>
- <td>DECIMAL_SEPARATOR</td>
- <td class="code"><pre>'.'</pre></td>
- </tr>
- <tr>
- <td>IGNORABLE_404_URLS</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>MIGRATION_MODULES</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>TEMPLATE_STRING_IF_INVALID</td>
- <td class="code"><pre>''</pre></td>
- </tr>
- <tr>
- <td>LOGOUT_URL</td>
- <td class="code"><pre>'/accounts/logout/'</pre></td>
- </tr>
- <tr>
- <td>EMAIL_USE_TLS</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>FIXTURE_DIRS</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>EMAIL_HOST</td>
- <td class="code"><pre>'localhost'</pre></td>
- </tr>
- <tr>
- <td>DATE_FORMAT</td>
- <td class="code"><pre>'N j, Y'</pre></td>
- </tr>
- <tr>
- <td>MEDIA_ROOT</td>
- <td class="code"><pre>''</pre></td>
- </tr>
- <tr>
- <td>DEFAULT_EXCEPTION_REPORTER_FILTER</td>
- <td class="code"><pre>'django.views.debug.SafeExceptionReporterFilter'</pre></td>
- </tr>
- <tr>
- <td>ADMINS</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>FORMAT_MODULE_PATH</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>DEFAULT_FROM_EMAIL</td>
- <td class="code"><pre>'webmaster@localhost'</pre></td>
- </tr>
- <tr>
- <td>REST_FRAMEWORK</td>
- <td class="code"><pre>{u'DEFAULT_RENDERER_CLASSES': [u'rest_framework.renderers.JSONRenderer',
- u'rest_framework.renderers.AdminRenderer',
- u'rest_framework.renderers.BrowsableAPIRenderer']}</pre></td>
- </tr>
- <tr>
- <td>MEDIA_URL</td>
- <td class="code"><pre>''</pre></td>
- </tr>
- <tr>
- <td>DATETIME_FORMAT</td>
- <td class="code"><pre>'N j, Y, P'</pre></td>
- </tr>
- <tr>
- <td>TEMPLATE_DIRS</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>DISALLOWED_USER_AGENTS</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>ALLOWED_INCLUDE_ROOTS</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>LOGGING</td>
- <td class="code"><pre>{u'disable_existing_loggers': False,
- u'filters': {u'require_debug_false': {u'()': u'django.utils.log.RequireDebugFalse'}},
- u'handlers': {u'mail_admins': {u'class': u'django.utils.log.AdminEmailHandler',
- u'filters': [u'require_debug_false'],
- u'level': u'ERROR'}},
- u'loggers': {u'django.request': {u'handlers': [u'mail_admins'],
- u'level': u'ERROR',
- u'propagate': True}},
- u'version': 1}</pre></td>
- </tr>
- <tr>
- <td>SHORT_DATE_FORMAT</td>
- <td class="code"><pre>'m/d/Y'</pre></td>
- </tr>
- <tr>
- <td>TEMPLATES</td>
- <td class="code"><pre>[{u'APP_DIRS': True,
- u'BACKEND': u'django.template.backends.django.DjangoTemplates',
- u'DIRS': [],
- u'OPTIONS': {u'context_processors': [u'django.template.context_processors.debug',
- u'django.template.context_processors.request',
- u'django.contrib.auth.context_processors.auth',
- u'django.contrib.messages.context_processors.messages']}}]</pre></td>
- </tr>
- <tr>
- <td>TEST_RUNNER</td>
- <td class="code"><pre>'django.test.runner.DiscoverRunner'</pre></td>
- </tr>
- <tr>
- <td>CACHE_MIDDLEWARE_KEY_PREFIX</td>
- <td class="code"><pre>u'********************'</pre></td>
- </tr>
- <tr>
- <td>SECURE_SSL_REDIRECT</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>TIME_ZONE</td>
- <td class="code"><pre>u'UTC'</pre></td>
- </tr>
- <tr>
- <td>FILE_UPLOAD_MAX_MEMORY_SIZE</td>
- <td class="code"><pre>2621440</pre></td>
- </tr>
- <tr>
- <td>EMAIL_BACKEND</td>
- <td class="code"><pre>'django.core.mail.backends.smtp.EmailBackend'</pre></td>
- </tr>
- <tr>
- <td>EMAIL_USE_SSL</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>TEMPLATE_CONTEXT_PROCESSORS</td>
- <td class="code"><pre>('django.contrib.auth.context_processors.auth',
- 'django.template.context_processors.debug',
- 'django.template.context_processors.i18n',
- 'django.template.context_processors.media',
- 'django.template.context_processors.static',
- 'django.template.context_processors.tz',
- 'django.contrib.messages.context_processors.messages')</pre></td>
- </tr>
- <tr>
- <td>SESSION_COOKIE_AGE</td>
- <td class="code"><pre>1209600</pre></td>
- </tr>
- <tr>
- <td>SETTINGS_MODULE</td>
- <td class="code"><pre>'bellmera_clients_api.settings'</pre></td>
- </tr>
- <tr>
- <td>USE_ETAGS</td>
- <td class="code"><pre>False</pre></td>
- </tr>
- <tr>
- <td>LANGUAGES_BIDI</td>
- <td class="code"><pre>('he', 'ar', 'fa', 'ur')</pre></td>
- </tr>
- <tr>
- <td>FILE_UPLOAD_TEMP_DIR</td>
- <td class="code"><pre>None</pre></td>
- </tr>
- <tr>
- <td>INTERNAL_IPS</td>
- <td class="code"><pre>()</pre></td>
- </tr>
- <tr>
- <td>STATIC_URL</td>
- <td class="code"><pre>u'/static/'</pre></td>
- </tr>
- <tr>
- <td>EMAIL_PORT</td>
- <td class="code"><pre>25</pre></td>
- </tr>
- <tr>
- <td>USE_TZ</td>
- <td class="code"><pre>True</pre></td>
- </tr>
- <tr>
- <td>SHORT_DATETIME_FORMAT</td>
- <td class="code"><pre>'m/d/Y P'</pre></td>
- </tr>
- <tr>
- <td>TEST_NON_SERIALIZED_APPS</td>
- <td class="code"><pre>[]</pre></td>
- </tr>
- <tr>
- <td>PASSWORD_HASHERS</td>
- <td class="code"><pre>u'********************'</pre></td>
- </tr>
- <tr>
- <td>ABSOLUTE_URL_OVERRIDES</td>
- <td class="code"><pre>{}</pre></td>
- </tr>
- <tr>
- <td>LANGUAGE_COOKIE_PATH</td>
- <td class="code"><pre>'/'</pre></td>
- </tr>
- <tr>
- <td>CACHE_MIDDLEWARE_SECONDS</td>
- <td class="code"><pre>600</pre></td>
- </tr>
- <tr>
- <td>EMAIL_SSL_CERTFILE</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>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>EMAIL_HOST_USER</td>
- <td class="code"><pre>''</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>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement