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/dating/5df943a9-9deb-41e2-abb8-ecae7179c29e/</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; padding-left: 2px; }
- div.context ol li pre { display:inline; }
- div.context ol.context-line li { color:#505050; 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;}
- span.commands a:link {color:#5E5694;}
- pre.exception_value { font-family: sans-serif; color: #666; font-size: 1.5em; margin: 10px 0 10px 0; }
- .append-bottom { margin-bottom: 10px; }
- </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.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>AttributeError at /api/v1/dating/5df943a9-9deb-41e2-abb8-ecae7179c29e/</h1>
- <pre class="exception_value">'dict' object has no attribute 'exception'</pre>
- <table class="meta">
- <tr>
- <th>Request Method:</th>
- <td>PATCH</td>
- </tr>
- <tr>
- <th>Request URL:</th>
- <td>http://phuketon.dvhs.pro/api/v1/dating/5df943a9-9deb-41e2-abb8-ecae7179c29e/</td>
- </tr>
- <tr>
- <th>Django Version:</th>
- <td>1.11</td>
- </tr>
- <tr>
- <th>Exception Type:</th>
- <td>AttributeError</td>
- </tr>
- <tr>
- <th>Exception Value:</th>
- <td>
- <pre>'dict' object has no attribute 'exception'</pre>
- </td>
- </tr>
- <tr>
- <th>Exception Location:</th>
- <td>/usr/local/lib/python3.5/site-packages/rest_framework/views.py in handle_exception, line 451</td>
- </tr>
- <tr>
- <th>Python Executable:</th>
- <td>/usr/local/bin/python</td>
- </tr>
- <tr>
- <th>Python Version:</th>
- <td>3.5.4</td>
- </tr>
- <tr>
- <th>Python Path:</th>
- <td>
- <pre>['/app',
- '/usr/local/bin',
- '/usr/local/lib/python35.zip',
- '/usr/local/lib/python3.5',
- '/usr/local/lib/python3.5/plat-linux',
- '/usr/local/lib/python3.5/lib-dynload',
- '/usr/local/lib/python3.5/site-packages',
- '/app']</pre>
- </td>
- </tr>
- <tr>
- <th>Server time:</th>
- <td>Пт, 2 Фев 2018 16:19:14 +0700</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 user">
- <code>/usr/local/lib/python3.5/site-packages/rest_framework/views.py</code> in
- <code>dispatch</code>
- <div class="context" id="c140502184197576">
- <ol start="479" class="pre-context" id="pre140502184197576">
- <li onclick="toggle('pre140502184197576', 'post140502184197576')">
- <pre> # Get the appropriate handler method</pre>
- </li>
- <li onclick="toggle('pre140502184197576', 'post140502184197576')">
- <pre> if request.method.lower() in self.http_method_names:</pre>
- </li>
- <li onclick="toggle('pre140502184197576', 'post140502184197576')">
- <pre> handler = getattr(self, request.method.lower(),</pre>
- </li>
- <li onclick="toggle('pre140502184197576', 'post140502184197576')">
- <pre> self.http_method_not_allowed)</pre>
- </li>
- <li onclick="toggle('pre140502184197576', 'post140502184197576')">
- <pre> else:</pre>
- </li>
- <li onclick="toggle('pre140502184197576', 'post140502184197576')">
- <pre> handler = self.http_method_not_allowed</pre>
- </li>
- <li onclick="toggle('pre140502184197576', 'post140502184197576')">
- <pre></pre>
- </li>
- </ol>
- <ol start="486" class="context-line">
- <li onclick="toggle('pre140502184197576', 'post140502184197576')">
- <pre>
- response = handler(request, *args, **kwargs)</pre>
- <span>...</span>
- </li>
- </ol>
- <ol start='487' class="post-context" id="post140502184197576">
- <li onclick="toggle('pre140502184197576', 'post140502184197576')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184197576', 'post140502184197576')">
- <pre> except Exception as exc:</pre>
- </li>
- <li onclick="toggle('pre140502184197576', 'post140502184197576')">
- <pre> response = self.handle_exception(exc)</pre>
- </li>
- <li onclick="toggle('pre140502184197576', 'post140502184197576')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184197576', 'post140502184197576')">
- <pre> self.response = self.finalize_response(request, response, *args, **kwargs)</pre>
- </li>
- <li onclick="toggle('pre140502184197576', 'post140502184197576')">
- <pre> return self.response</pre>
- </li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140502184197576')">
- <span>▶</span> Local vars
- </a>
- </div>
- <table class="vars" id="v140502184197576">
- <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 DatingMemberView.partial_update of <dating.views.DatingMemberView object at 0x7fc937998b70>></pre>
- </td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code">
- <pre>{'pk': '5df943a9-9deb-41e2-abb8-ecae7179c29e'}</pre>
- </td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code">
- <pre><rest_framework.request.Request object at 0x7fc9378ea898></pre>
- </td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code">
- <pre><dating.views.DatingMemberView object at 0x7fc937998b70></pre>
- </td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame user">
- <code>/app/dating/views.py</code> in
- <code>partial_update</code>
- <div class="context" id="c140502184196104">
- <ol start="118" class="pre-context" id="pre140502184196104">
- <li onclick="toggle('pre140502184196104', 'post140502184196104')">
- <pre> "dating_status": "active", choice from ["active", "not_active"] \n</pre>
- </li>
- <li onclick="toggle('pre140502184196104', 'post140502184196104')">
- <pre> } \n</pre>
- </li>
- <li onclick="toggle('pre140502184196104', 'post140502184196104')">
- <pre> """</pre>
- </li>
- <li onclick="toggle('pre140502184196104', 'post140502184196104')">
- <pre> instance = self.get_object()</pre>
- </li>
- <li onclick="toggle('pre140502184196104', 'post140502184196104')">
- <pre> serializer = DatingMemberPartialUpdateSerializer(instance=instance, data=request.data,</pre>
- </li>
- <li onclick="toggle('pre140502184196104', 'post140502184196104')">
- <pre> context=self.get_serializer_context())</pre>
- </li>
- <li onclick="toggle('pre140502184196104', 'post140502184196104')">
- <pre> serializer.is_valid(raise_exception=True)</pre>
- </li>
- </ol>
- <ol start="125" class="context-line">
- <li onclick="toggle('pre140502184196104', 'post140502184196104')">
- <pre>
- serializer.save()</pre>
- <span>...</span>
- </li>
- </ol>
- <ol start='126' class="post-context" id="post140502184196104">
- <li onclick="toggle('pre140502184196104', 'post140502184196104')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184196104', 'post140502184196104')">
- <pre> queryset = self.get_object()</pre>
- </li>
- <li onclick="toggle('pre140502184196104', 'post140502184196104')">
- <pre> serializer = DatingMemberSerializer(queryset, context=self.get_renderer_context())</pre>
- </li>
- <li onclick="toggle('pre140502184196104', 'post140502184196104')">
- <pre> return Response(serializer.data)</pre>
- </li>
- <li onclick="toggle('pre140502184196104', 'post140502184196104')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184196104', 'post140502184196104')">
- <pre></pre>
- </li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140502184196104')">
- <span>▶</span> Local vars
- </a>
- </div>
- <table class="vars" id="v140502184196104">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code">
- <pre>()</pre>
- </td>
- </tr>
- <tr>
- <td>instance</td>
- <td class="code">
- <pre><User: Taras (qwerty@gmail.com)></pre>
- </td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code">
- <pre>{'pk': '5df943a9-9deb-41e2-abb8-ecae7179c29e'}</pre>
- </td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code">
- <pre><rest_framework.request.Request object at 0x7fc9378ea898></pre>
- </td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code">
- <pre><dating.views.DatingMemberView object at 0x7fc937998b70></pre>
- </td>
- </tr>
- <tr>
- <td>serializer</td>
- <td class="code">
- <pre>DatingMemberPartialUpdateSerializer(context={'format': None, 'request': <rest_framework.request.Request object>, 'view': <dating.views.DatingMemberView object>}, data=<QueryDict: {'username': ['Taras']}>, instance=<User: Taras (qwerty@gmail.com)>):
- id = UUIDField(read_only=True)
- is_hidden = BooleanField(default=False, required=False)
- is_hidden_date = DateTimeField(read_only=True, required=False)
- description = CharField(allow_blank=True, max_length=150, required=False)
- images = FileSerializer(many=True, required=False):
- id = IntegerField(label='ID', read_only=True)
- file = FileField(label='Файлы', max_length=100, write_only=True)
- url = ReadOnlyField()
- owner = PrimaryKeyRelatedField(default=CurrentUserDefault(), read_only=True)
- is_liked = SerializerMethodField()
- created_date = DateTimeField(read_only=True)
- views = IntegerField(label='Просмотры', read_only=True)
- likes = IntegerField(label='Лайки', read_only=True)
- content_type = ChoiceField(choices=['admin.logentry', 'admin_push.adminpush', 'admin_push.adminpushcity', 'advertise.advertise', 'advertise.advertisetype', 'articles.article', 'articles.workinghour', 'articles.websites', 'articles.articletracking', 'auth.permission', 'auth.group', 'authtoken.token', 'blacklists.blacklist', 'categories.category', 'chat.message', 'chat.dialog', 'claims.claim', 'constance.config', 'contenttypes.contenttype', 'database.constance', 'dating.member', 'dating.photolike', 'django_twilio.credential', 'django_twilio.caller', 'exchange_rates.exchangerate', 'files.projectfile', 'forum.forumpost', 'forum.forumcategory', 'forum.privatemessage', 'forum.forumtopic', 'forum.forumtracking', 'frontend.module', 'pages.page', 'push_notifications.gcmdevice', 'push_notifications.wnsdevice', 'push_notifications.apnsdevice', 'sessions.session', 'sites.site', 'star_ratings.rating', 'star_ratings.userrating', 'thumbnail.kvstore', 'users.admin', 'users.user', 'users.profile', 'viewflow.process', 'viewflow.task', 'votes.vote', 'votes.voterating', 'weather.weatherbyday', 'weather.weathercurrent'], write_only=True)
- content_type_ = SerializerMethodField(read_only=True)
- image_ids = PrimaryKeyRelatedField(many=True, queryset=<QuerySet [<ProjectFile: http://phuketon.dvhs.pro/media/files/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_oAmmgU6.PNG>, <ProjectFile: http://phuketon.dvhs.pro/media/files/001_01_%D0%BE%D1%82%D0%BF%D1%80%D0%B0%D0%B2%D0%BA%D0%B0_%D0%BF%D0%B0%D1%80%D0%BE%D0%BB%D1%8F_v2.png>, <ProjectFile: http://phuketon.dvhs.pro/media/files/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_qh9KR4H.PNG>, <ProjectFile: http://phuketon.dvhs.pro/media/files/partlycloudy_qAtwmlB.gif>, <ProjectFile: http://phuketon.dvhs.pro/media/files/partlycloudy_9JWrItX.gif>, <ProjectFile: http://phuketon.dvhs.pro/media/files/partlycloudy_CYy8ezD.gif>, <ProjectFile: http://phuketon.dvhs.pro/media/files/partlycloudy_zrJw5Xk.gif>, <ProjectFile: http://phuketon.dvhs.pro/media/files/cropped22334950867812664.jpg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/cropped1731753790.jpg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/IMG_1593.jpg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/Untitled-1.png>, <ProjectFile: http://phuketon.dvhs.pro/media/files/cropped835155920.jpg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/imageTemp1512633825786.jpg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/cropped-1475363846.jpg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/ic_internet.png>, <ProjectFile: http://phuketon.dvhs.pro/media/files/ic_currency.png>, <ProjectFile: http://phuketon.dvhs.pro/media/files/ic_forum_grey.png>, <ProjectFile: http://phuketon.dvhs.pro/media/files/testTemp_wt1VNPM.jpeg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/imageTemp1512657885482.jpg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/imageTemp1512657986036.jpg>, '...(remaining elements truncated)...']>, required=False, write_only=True)
- user = PrimaryKeyRelatedField(default=CurrentUserDefault(), read_only=True)
- username = CharField(... <trimmed 8122 bytes string></pre>
- </td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame user">
- <code>/app/dating/serializers.py</code> in
- <code>save</code>
- <div class="context" id="c140502196917064">
- <ol start="162" class="pre-context" id="pre140502196917064">
- <li onclick="toggle('pre140502196917064', 'post140502196917064')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502196917064', 'post140502196917064')">
- <pre> if 'avatar' in self.validated_data:</pre>
- </li>
- <li onclick="toggle('pre140502196917064', 'post140502196917064')">
- <pre> avatar = self.validated_data.pop('avatar')</pre>
- </li>
- <li onclick="toggle('pre140502196917064', 'post140502196917064')">
- <pre> fields.append('avatar')</pre>
- </li>
- <li onclick="toggle('pre140502196917064', 'post140502196917064')">
- <pre> self.instance.avatar = avatar</pre>
- </li>
- <li onclick="toggle('pre140502196917064', 'post140502196917064')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502196917064', 'post140502196917064')">
- <pre> self.instance.__dict__.update(self.validated_data)</pre>
- </li>
- </ol>
- <ol start="169" class="context-line">
- <li onclick="toggle('pre140502196917064', 'post140502196917064')">
- <pre>
- self.instance.save(update_fields=fields)</pre>
- <span>...</span>
- </li>
- </ol>
- <ol start='170' class="post-context" id="post140502196917064">
- <li onclick="toggle('pre140502196917064', 'post140502196917064')">
- <pre> return self.instance</pre>
- </li>
- <li onclick="toggle('pre140502196917064', 'post140502196917064')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502196917064', 'post140502196917064')">
- <pre> class Meta:</pre>
- </li>
- <li onclick="toggle('pre140502196917064', 'post140502196917064')">
- <pre> model = User</pre>
- </li>
- <li onclick="toggle('pre140502196917064', 'post140502196917064')">
- <pre> exclude = ('password',)</pre>
- </li>
- <li onclick="toggle('pre140502196917064', 'post140502196917064')">
- <pre></pre>
- </li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140502196917064')">
- <span>▶</span> Local vars
- </a>
- </div>
- <table class="vars" id="v140502196917064">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>fields</td>
- <td class="code">
- <pre>['images',
- 'username',
- 'is_enable_dating_messages',
- 'is_blocked',
- 'is_enabled_push_sound',
- 'groups',
- 'user_permissions']</pre>
- </td>
- </tr>
- <tr>
- <td>is_hidden</td>
- <td class="code">
- <pre>False</pre>
- </td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code">
- <pre>{}</pre>
- </td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code">
- <pre>DatingMemberPartialUpdateSerializer(context={'format': None, 'request': <rest_framework.request.Request object>, 'view': <dating.views.DatingMemberView object>}, data=<QueryDict: {'username': ['Taras']}>, instance=<User: Taras (qwerty@gmail.com)>):
- id = UUIDField(read_only=True)
- is_hidden = BooleanField(default=False, required=False)
- is_hidden_date = DateTimeField(read_only=True, required=False)
- description = CharField(allow_blank=True, max_length=150, required=False)
- images = FileSerializer(many=True, required=False):
- id = IntegerField(label='ID', read_only=True)
- file = FileField(label='Файлы', max_length=100, write_only=True)
- url = ReadOnlyField()
- owner = PrimaryKeyRelatedField(default=CurrentUserDefault(), read_only=True)
- is_liked = SerializerMethodField()
- created_date = DateTimeField(read_only=True)
- views = IntegerField(label='Просмотры', read_only=True)
- likes = IntegerField(label='Лайки', read_only=True)
- content_type = ChoiceField(choices=['admin.logentry', 'admin_push.adminpush', 'admin_push.adminpushcity', 'advertise.advertise', 'advertise.advertisetype', 'articles.article', 'articles.workinghour', 'articles.websites', 'articles.articletracking', 'auth.permission', 'auth.group', 'authtoken.token', 'blacklists.blacklist', 'categories.category', 'chat.message', 'chat.dialog', 'claims.claim', 'constance.config', 'contenttypes.contenttype', 'database.constance', 'dating.member', 'dating.photolike', 'django_twilio.credential', 'django_twilio.caller', 'exchange_rates.exchangerate', 'files.projectfile', 'forum.forumpost', 'forum.forumcategory', 'forum.privatemessage', 'forum.forumtopic', 'forum.forumtracking', 'frontend.module', 'pages.page', 'push_notifications.gcmdevice', 'push_notifications.wnsdevice', 'push_notifications.apnsdevice', 'sessions.session', 'sites.site', 'star_ratings.rating', 'star_ratings.userrating', 'thumbnail.kvstore', 'users.admin', 'users.user', 'users.profile', 'viewflow.process', 'viewflow.task', 'votes.vote', 'votes.voterating', 'weather.weatherbyday', 'weather.weathercurrent'], write_only=True)
- content_type_ = SerializerMethodField(read_only=True)
- image_ids = PrimaryKeyRelatedField(many=True, queryset=<QuerySet [<ProjectFile: http://phuketon.dvhs.pro/media/files/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_oAmmgU6.PNG>, <ProjectFile: http://phuketon.dvhs.pro/media/files/001_01_%D0%BE%D1%82%D0%BF%D1%80%D0%B0%D0%B2%D0%BA%D0%B0_%D0%BF%D0%B0%D1%80%D0%BE%D0%BB%D1%8F_v2.png>, <ProjectFile: http://phuketon.dvhs.pro/media/files/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA_qh9KR4H.PNG>, <ProjectFile: http://phuketon.dvhs.pro/media/files/partlycloudy_qAtwmlB.gif>, <ProjectFile: http://phuketon.dvhs.pro/media/files/partlycloudy_9JWrItX.gif>, <ProjectFile: http://phuketon.dvhs.pro/media/files/partlycloudy_CYy8ezD.gif>, <ProjectFile: http://phuketon.dvhs.pro/media/files/partlycloudy_zrJw5Xk.gif>, <ProjectFile: http://phuketon.dvhs.pro/media/files/cropped22334950867812664.jpg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/cropped1731753790.jpg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/IMG_1593.jpg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/Untitled-1.png>, <ProjectFile: http://phuketon.dvhs.pro/media/files/cropped835155920.jpg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/imageTemp1512633825786.jpg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/cropped-1475363846.jpg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/ic_internet.png>, <ProjectFile: http://phuketon.dvhs.pro/media/files/ic_currency.png>, <ProjectFile: http://phuketon.dvhs.pro/media/files/ic_forum_grey.png>, <ProjectFile: http://phuketon.dvhs.pro/media/files/testTemp_wt1VNPM.jpeg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/imageTemp1512657885482.jpg>, <ProjectFile: http://phuketon.dvhs.pro/media/files/imageTemp1512657986036.jpg>, '...(remaining elements truncated)...']>, required=False, write_only=True)
- user = PrimaryKeyRelatedField(default=CurrentUserDefault(), read_only=True)
- username = CharField(... <trimmed 8122 bytes string></pre>
- </td>
- </tr>
- <tr>
- <td>user</td>
- <td class="code">
- <pre><User: TTT (qwerty@gmail.com)></pre>
- </td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/local/lib/python3.5/site-packages/django/contrib/auth/base_user.py</code> in
- <code>save</code>
- <div class="context" id="c140502196918280">
- <ol start="73" class="pre-context" id="pre140502196918280">
- <li onclick="toggle('pre140502196918280', 'post140502196918280')">
- <pre> def __str__(self):</pre>
- </li>
- <li onclick="toggle('pre140502196918280', 'post140502196918280')">
- <pre> return self.get_username()</pre>
- </li>
- <li onclick="toggle('pre140502196918280', 'post140502196918280')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502196918280', 'post140502196918280')">
- <pre> def clean(self):</pre>
- </li>
- <li onclick="toggle('pre140502196918280', 'post140502196918280')">
- <pre> setattr(self, self.USERNAME_FIELD, self.normalize_username(self.get_username()))</pre>
- </li>
- <li onclick="toggle('pre140502196918280', 'post140502196918280')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502196918280', 'post140502196918280')">
- <pre> def save(self, *args, **kwargs):</pre>
- </li>
- </ol>
- <ol start="80" class="context-line">
- <li onclick="toggle('pre140502196918280', 'post140502196918280')">
- <pre>
- super(AbstractBaseUser, self).save(*args, **kwargs)</pre>
- <span>...</span>
- </li>
- </ol>
- <ol start='81' class="post-context" id="post140502196918280">
- <li onclick="toggle('pre140502196918280', 'post140502196918280')">
- <pre> if self._password is not None:</pre>
- </li>
- <li onclick="toggle('pre140502196918280', 'post140502196918280')">
- <pre> password_validation.password_changed(self._password, self)</pre>
- </li>
- <li onclick="toggle('pre140502196918280', 'post140502196918280')">
- <pre> self._password = None</pre>
- </li>
- <li onclick="toggle('pre140502196918280', 'post140502196918280')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502196918280', 'post140502196918280')">
- <pre> def natural_key(self):</pre>
- </li>
- <li onclick="toggle('pre140502196918280', 'post140502196918280')">
- <pre> return (self.get_username(),)</pre>
- </li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140502196918280')">
- <span>▶</span> Local vars
- </a>
- </div>
- <table class="vars" id="v140502196918280">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>__class__</td>
- <td class="code">
- <pre><class 'django.contrib.auth.base_user.AbstractBaseUser'></pre>
- </td>
- </tr>
- <tr>
- <td>args</td>
- <td class="code">
- <pre>()</pre>
- </td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code">
- <pre>{'update_fields': ['images',
- 'username',
- 'is_enable_dating_messages',
- 'is_blocked',
- 'is_enabled_push_sound',
- 'groups',
- 'user_permissions']}</pre>
- </td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code">
- <pre><User: Taras (qwerty@gmail.com)></pre>
- </td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/local/lib/python3.5/site-packages/django/db/models/base.py</code> in
- <code>save</code>
- <div class="context" id="c140502196917832">
- <ol start="785" class="pre-context" id="pre140502196917832">
- <li onclick="toggle('pre140502196917832', 'post140502196917832')">
- <pre> field_names.add(field.attname)</pre>
- </li>
- <li onclick="toggle('pre140502196917832', 'post140502196917832')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502196917832', 'post140502196917832')">
- <pre> non_model_fields = update_fields.difference(field_names)</pre>
- </li>
- <li onclick="toggle('pre140502196917832', 'post140502196917832')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502196917832', 'post140502196917832')">
- <pre> if non_model_fields:</pre>
- </li>
- <li onclick="toggle('pre140502196917832', 'post140502196917832')">
- <pre> raise ValueError("The following fields do not exist in this "</pre>
- </li>
- <li onclick="toggle('pre140502196917832', 'post140502196917832')">
- <pre> "model or are m2m fields: %s"</pre>
- </li>
- </ol>
- <ol start="792" class="context-line">
- <li onclick="toggle('pre140502196917832', 'post140502196917832')">
- <pre>
- % ', '.join(non_model_fields))</pre>
- <span>...</span>
- </li>
- </ol>
- <ol start='793' class="post-context" id="post140502196917832">
- <li onclick="toggle('pre140502196917832', 'post140502196917832')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502196917832', 'post140502196917832')">
- <pre> # If saving to the same database, and this model is deferred, then</pre>
- </li>
- <li onclick="toggle('pre140502196917832', 'post140502196917832')">
- <pre> # automatically do a "update_fields" save on the loaded fields.</pre>
- </li>
- <li onclick="toggle('pre140502196917832', 'post140502196917832')">
- <pre> elif not force_insert and deferred_fields and using == self._state.db:</pre>
- </li>
- <li onclick="toggle('pre140502196917832', 'post140502196917832')">
- <pre> field_names = set()</pre>
- </li>
- <li onclick="toggle('pre140502196917832', 'post140502196917832')">
- <pre> for field in self._meta.concrete_fields:</pre>
- </li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140502196917832')">
- <span>▶</span> Local vars
- </a>
- </div>
- <table class="vars" id="v140502196917832">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>deferred_fields</td>
- <td class="code">
- <pre>set()</pre>
- </td>
- </tr>
- <tr>
- <td>field</td>
- <td class="code">
- <pre><django.db.models.fields.BooleanField: is_enabled_push_sound></pre>
- </td>
- </tr>
- <tr>
- <td>field_names</td>
- <td class="code">
- <pre>{'address',
- 'avatar',
- 'avatar_id',
- 'blocked_date_from',
- 'blocked_date_to',
- 'blocked_message',
- 'blocked_type',
- 'city',
- 'city_id',
- 'date_birthday',
- 'date_joined',
- 'dating_status',
- 'default_search_radius',
- 'email',
- 'is_active',
- 'is_blocked',
- 'is_enable_dating_messages',
- 'is_enable_forum_messages',
- 'is_enabled_push_sound',
- 'is_phone_verified',
- 'is_staff',
- 'is_superuser',
- 'last_login',
- 'latitude',
- 'longitude',
- 'password',
- 'phone',
- 'point',
- 'push_sound',
- 'sex',
- 'user_id',
- 'username',
- 'verify_code'}</pre>
- </td>
- </tr>
- <tr>
- <td>force_insert</td>
- <td class="code">
- <pre>False</pre>
- </td>
- </tr>
- <tr>
- <td>force_update</td>
- <td class="code">
- <pre>False</pre>
- </td>
- </tr>
- <tr>
- <td>non_model_fields</td>
- <td class="code">
- <pre>frozenset({'images', 'user_permissions', 'groups'})</pre>
- </td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code">
- <pre><User: Taras (qwerty@gmail.com)></pre>
- </td>
- </tr>
- <tr>
- <td>update_fields</td>
- <td class="code">
- <pre>frozenset({'groups',
- 'images',
- 'is_blocked',
- 'is_enable_dating_messages',
- 'is_enabled_push_sound',
- 'user_permissions',
- 'username'})</pre>
- </td>
- </tr>
- <tr>
- <td>using</td>
- <td class="code">
- <pre>'default'</pre>
- </td>
- </tr>
- </tbody>
- </table>
- </li>
- <li>
- <h3>
- During handling of the above exception (The following fields do not exist in this model or are m2m fields: images, user_permissions, groups), another exception occurred:
- </h3>
- </li>
- <li class="frame django">
- <code>/usr/local/lib/python3.5/site-packages/django/core/handlers/exception.py</code> in
- <code>inner</code>
- <div class="context" id="c140502184198088">
- <ol start="34" class="pre-context" id="pre140502184198088">
- <li onclick="toggle('pre140502184198088', 'post140502184198088')">
- <pre> This decorator is automatically applied to all middleware to ensure that</pre>
- </li>
- <li onclick="toggle('pre140502184198088', 'post140502184198088')">
- <pre> no middleware leaks an exception and that the next middleware in the stack</pre>
- </li>
- <li onclick="toggle('pre140502184198088', 'post140502184198088')">
- <pre> can rely on getting a response instead of an exception.</pre>
- </li>
- <li onclick="toggle('pre140502184198088', 'post140502184198088')">
- <pre> """</pre>
- </li>
- <li onclick="toggle('pre140502184198088', 'post140502184198088')">
- <pre> @wraps(get_response, assigned=available_attrs(get_response))</pre>
- </li>
- <li onclick="toggle('pre140502184198088', 'post140502184198088')">
- <pre> def inner(request):</pre>
- </li>
- <li onclick="toggle('pre140502184198088', 'post140502184198088')">
- <pre> try:</pre>
- </li>
- </ol>
- <ol start="41" class="context-line">
- <li onclick="toggle('pre140502184198088', 'post140502184198088')">
- <pre>
- response = get_response(request)</pre>
- <span>...</span>
- </li>
- </ol>
- <ol start='42' class="post-context" id="post140502184198088">
- <li onclick="toggle('pre140502184198088', 'post140502184198088')">
- <pre> except Exception as exc:</pre>
- </li>
- <li onclick="toggle('pre140502184198088', 'post140502184198088')">
- <pre> response = response_for_exception(request, exc)</pre>
- </li>
- <li onclick="toggle('pre140502184198088', 'post140502184198088')">
- <pre> return response</pre>
- </li>
- <li onclick="toggle('pre140502184198088', 'post140502184198088')">
- <pre> return inner</pre>
- </li>
- <li onclick="toggle('pre140502184198088', 'post140502184198088')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184198088', 'post140502184198088')">
- <pre></pre>
- </li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140502184198088')">
- <span>▶</span> Local vars
- </a>
- </div>
- <table class="vars" id="v140502184198088">
- <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 'exception'",)</pre>
- </td>
- </tr>
- <tr>
- <td>get_response</td>
- <td class="code">
- <pre><bound method BaseHandler._legacy_get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7fc948886208>></pre>
- </td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code">
- <pre><WSGIRequest: PATCH '/api/v1/dating/5df943a9-9deb-41e2-abb8-ecae7179c29e/'></pre>
- </td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/local/lib/python3.5/site-packages/django/core/handlers/base.py</code> in
- <code>_legacy_get_response</code>
- <div class="context" id="c140502184197832">
- <ol start="242" class="pre-context" id="pre140502184197832">
- <li onclick="toggle('pre140502184197832', 'post140502184197832')">
- <pre> # Apply request middleware</pre>
- </li>
- <li onclick="toggle('pre140502184197832', 'post140502184197832')">
- <pre> for middleware_method in self._request_middleware:</pre>
- </li>
- <li onclick="toggle('pre140502184197832', 'post140502184197832')">
- <pre> response = middleware_method(request)</pre>
- </li>
- <li onclick="toggle('pre140502184197832', 'post140502184197832')">
- <pre> if response:</pre>
- </li>
- <li onclick="toggle('pre140502184197832', 'post140502184197832')">
- <pre> break</pre>
- </li>
- <li onclick="toggle('pre140502184197832', 'post140502184197832')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184197832', 'post140502184197832')">
- <pre> if response is None:</pre>
- </li>
- </ol>
- <ol start="249" class="context-line">
- <li onclick="toggle('pre140502184197832', 'post140502184197832')">
- <pre>
- response = self._get_response(request)</pre>
- <span>...</span>
- </li>
- </ol>
- <ol start='250' class="post-context" id="post140502184197832">
- <li onclick="toggle('pre140502184197832', 'post140502184197832')">
- <pre> return response</pre>
- </li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140502184197832')">
- <span>▶</span> Local vars
- </a>
- </div>
- <table class="vars" id="v140502184197832">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>middleware_method</td>
- <td class="code">
- <pre><bound method ActiveUserMiddleware.process_request of <core.middleware.ActiveUserMiddleware object at 0x7fc937aed5c0>></pre>
- </td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code">
- <pre><WSGIRequest: PATCH '/api/v1/dating/5df943a9-9deb-41e2-abb8-ecae7179c29e/'></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 0x7fc948886208></pre>
- </td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/local/lib/python3.5/site-packages/django/core/handlers/base.py</code> in
- <code>_get_response</code>
- <div class="context" id="c140502184195592">
- <ol start="180" class="pre-context" id="pre140502184195592">
- <li onclick="toggle('pre140502184195592', 'post140502184195592')">
- <pre> break</pre>
- </li>
- <li onclick="toggle('pre140502184195592', 'post140502184195592')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184195592', 'post140502184195592')">
- <pre> if response is None:</pre>
- </li>
- <li onclick="toggle('pre140502184195592', 'post140502184195592')">
- <pre> wrapped_callback = self.make_view_atomic(callback)</pre>
- </li>
- <li onclick="toggle('pre140502184195592', 'post140502184195592')">
- <pre> try:</pre>
- </li>
- <li onclick="toggle('pre140502184195592', 'post140502184195592')">
- <pre> response = wrapped_callback(request, *callback_args, **callback_kwargs)</pre>
- </li>
- <li onclick="toggle('pre140502184195592', 'post140502184195592')">
- <pre> except Exception as e:</pre>
- </li>
- </ol>
- <ol start="187" class="context-line">
- <li onclick="toggle('pre140502184195592', 'post140502184195592')">
- <pre>
- response = self.process_exception_by_middleware(e, request)</pre>
- <span>...</span>
- </li>
- </ol>
- <ol start='188' class="post-context" id="post140502184195592">
- <li onclick="toggle('pre140502184195592', 'post140502184195592')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184195592', 'post140502184195592')">
- <pre> # Complain if the view returned None (a common error).</pre>
- </li>
- <li onclick="toggle('pre140502184195592', 'post140502184195592')">
- <pre> if response is None:</pre>
- </li>
- <li onclick="toggle('pre140502184195592', 'post140502184195592')">
- <pre> if isinstance(callback, types.FunctionType): # FBV</pre>
- </li>
- <li onclick="toggle('pre140502184195592', 'post140502184195592')">
- <pre> view_name = callback.__name__</pre>
- </li>
- <li onclick="toggle('pre140502184195592', 'post140502184195592')">
- <pre> else: # CBV</pre>
- </li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140502184195592')">
- <span>▶</span> Local vars
- </a>
- </div>
- <table class="vars" id="v140502184195592">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>callback</td>
- <td class="code">
- <pre><function DatingMemberView at 0x7fc937a078c8></pre>
- </td>
- </tr>
- <tr>
- <td>callback_args</td>
- <td class="code">
- <pre>()</pre>
- </td>
- </tr>
- <tr>
- <td>callback_kwargs</td>
- <td class="code">
- <pre>{'pk': '5df943a9-9deb-41e2-abb8-ecae7179c29e'}</pre>
- </td>
- </tr>
- <tr>
- <td>middleware_method</td>
- <td class="code">
- <pre><bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7fc937aed470>></pre>
- </td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code">
- <pre><WSGIRequest: PATCH '/api/v1/dating/5df943a9-9deb-41e2-abb8-ecae7179c29e/'></pre>
- </td>
- </tr>
- <tr>
- <td>resolver</td>
- <td class="code">
- <pre><RegexURLResolver 'urls' (None:None) ^/></pre>
- </td>
- </tr>
- <tr>
- <td>resolver_match</td>
- <td class="code">
- <pre>ResolverMatch(func=dating.views.DatingMemberView, args=(), kwargs={'pk': '5df943a9-9deb-41e2-abb8-ecae7179c29e'}, url_name=forum_category-detail, app_names=[], namespaces=[])</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 0x7fc948886208></pre>
- </td>
- </tr>
- <tr>
- <td>wrapped_callback</td>
- <td class="code">
- <pre><function DatingMemberView at 0x7fc937a078c8></pre>
- </td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/local/lib/python3.5/site-packages/django/core/handlers/base.py</code> in
- <code>_get_response</code>
- <div class="context" id="c140502184197000">
- <ol start="178" class="pre-context" id="pre140502184197000">
- <li onclick="toggle('pre140502184197000', 'post140502184197000')">
- <pre> response = middleware_method(request, callback, callback_args, callback_kwargs)</pre>
- </li>
- <li onclick="toggle('pre140502184197000', 'post140502184197000')">
- <pre> if response:</pre>
- </li>
- <li onclick="toggle('pre140502184197000', 'post140502184197000')">
- <pre> break</pre>
- </li>
- <li onclick="toggle('pre140502184197000', 'post140502184197000')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184197000', 'post140502184197000')">
- <pre> if response is None:</pre>
- </li>
- <li onclick="toggle('pre140502184197000', 'post140502184197000')">
- <pre> wrapped_callback = self.make_view_atomic(callback)</pre>
- </li>
- <li onclick="toggle('pre140502184197000', 'post140502184197000')">
- <pre> try:</pre>
- </li>
- </ol>
- <ol start="185" class="context-line">
- <li onclick="toggle('pre140502184197000', 'post140502184197000')">
- <pre>
- response = wrapped_callback(request, *callback_args, **callback_kwargs)</pre>
- <span>...</span>
- </li>
- </ol>
- <ol start='186' class="post-context" id="post140502184197000">
- <li onclick="toggle('pre140502184197000', 'post140502184197000')">
- <pre> except Exception as e:</pre>
- </li>
- <li onclick="toggle('pre140502184197000', 'post140502184197000')">
- <pre> response = self.process_exception_by_middleware(e, request)</pre>
- </li>
- <li onclick="toggle('pre140502184197000', 'post140502184197000')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184197000', 'post140502184197000')">
- <pre> # Complain if the view returned None (a common error).</pre>
- </li>
- <li onclick="toggle('pre140502184197000', 'post140502184197000')">
- <pre> if response is None:</pre>
- </li>
- <li onclick="toggle('pre140502184197000', 'post140502184197000')">
- <pre> if isinstance(callback, types.FunctionType): # FBV</pre>
- </li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140502184197000')">
- <span>▶</span> Local vars
- </a>
- </div>
- <table class="vars" id="v140502184197000">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>callback</td>
- <td class="code">
- <pre><function DatingMemberView at 0x7fc937a078c8></pre>
- </td>
- </tr>
- <tr>
- <td>callback_args</td>
- <td class="code">
- <pre>()</pre>
- </td>
- </tr>
- <tr>
- <td>callback_kwargs</td>
- <td class="code">
- <pre>{'pk': '5df943a9-9deb-41e2-abb8-ecae7179c29e'}</pre>
- </td>
- </tr>
- <tr>
- <td>middleware_method</td>
- <td class="code">
- <pre><bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7fc937aed470>></pre>
- </td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code">
- <pre><WSGIRequest: PATCH '/api/v1/dating/5df943a9-9deb-41e2-abb8-ecae7179c29e/'></pre>
- </td>
- </tr>
- <tr>
- <td>resolver</td>
- <td class="code">
- <pre><RegexURLResolver 'urls' (None:None) ^/></pre>
- </td>
- </tr>
- <tr>
- <td>resolver_match</td>
- <td class="code">
- <pre>ResolverMatch(func=dating.views.DatingMemberView, args=(), kwargs={'pk': '5df943a9-9deb-41e2-abb8-ecae7179c29e'}, url_name=forum_category-detail, app_names=[], namespaces=[])</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 0x7fc948886208></pre>
- </td>
- </tr>
- <tr>
- <td>wrapped_callback</td>
- <td class="code">
- <pre><function DatingMemberView at 0x7fc937a078c8></pre>
- </td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame django">
- <code>/usr/local/lib/python3.5/site-packages/django/views/decorators/csrf.py</code> in
- <code>wrapped_view</code>
- <div class="context" id="c140502184197768">
- <ol start="51" class="pre-context" id="pre140502184197768">
- <li onclick="toggle('pre140502184197768', 'post140502184197768')">
- <pre> """</pre>
- </li>
- <li onclick="toggle('pre140502184197768', 'post140502184197768')">
- <pre> Marks a view function as being exempt from the CSRF view protection.</pre>
- </li>
- <li onclick="toggle('pre140502184197768', 'post140502184197768')">
- <pre> """</pre>
- </li>
- <li onclick="toggle('pre140502184197768', 'post140502184197768')">
- <pre> # We could just do view_func.csrf_exempt = True, but decorators</pre>
- </li>
- <li onclick="toggle('pre140502184197768', 'post140502184197768')">
- <pre> # are nicer if they don't have side-effects, so we return a new</pre>
- </li>
- <li onclick="toggle('pre140502184197768', 'post140502184197768')">
- <pre> # function.</pre>
- </li>
- <li onclick="toggle('pre140502184197768', 'post140502184197768')">
- <pre> def wrapped_view(*args, **kwargs):</pre>
- </li>
- </ol>
- <ol start="58" class="context-line">
- <li onclick="toggle('pre140502184197768', 'post140502184197768')">
- <pre>
- return view_func(*args, **kwargs)</pre>
- <span>...</span>
- </li>
- </ol>
- <ol start='59' class="post-context" id="post140502184197768">
- <li onclick="toggle('pre140502184197768', 'post140502184197768')">
- <pre> wrapped_view.csrf_exempt = True</pre>
- </li>
- <li onclick="toggle('pre140502184197768', 'post140502184197768')">
- <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, '140502184197768')">
- <span>▶</span> Local vars
- </a>
- </div>
- <table class="vars" id="v140502184197768">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>args</td>
- <td class="code">
- <pre>(<WSGIRequest: PATCH '/api/v1/dating/5df943a9-9deb-41e2-abb8-ecae7179c29e/'>,)</pre>
- </td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code">
- <pre>{'pk': '5df943a9-9deb-41e2-abb8-ecae7179c29e'}</pre>
- </td>
- </tr>
- <tr>
- <td>view_func</td>
- <td class="code">
- <pre><function DatingMemberView at 0x7fc937a07840></pre>
- </td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame user">
- <code>/usr/local/lib/python3.5/site-packages/rest_framework/viewsets.py</code> in
- <code>view</code>
- <div class="context" id="c140502184195400">
- <ol start="83" class="pre-context" id="pre140502184195400">
- <li onclick="toggle('pre140502184195400', 'post140502184195400')">
- <pre> self.head = self.get</pre>
- </li>
- <li onclick="toggle('pre140502184195400', 'post140502184195400')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184195400', 'post140502184195400')">
- <pre> self.request = request</pre>
- </li>
- <li onclick="toggle('pre140502184195400', 'post140502184195400')">
- <pre> self.args = args</pre>
- </li>
- <li onclick="toggle('pre140502184195400', 'post140502184195400')">
- <pre> self.kwargs = kwargs</pre>
- </li>
- <li onclick="toggle('pre140502184195400', 'post140502184195400')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184195400', 'post140502184195400')">
- <pre> # And continue as usual</pre>
- </li>
- </ol>
- <ol start="90" class="context-line">
- <li onclick="toggle('pre140502184195400', 'post140502184195400')">
- <pre>
- return self.dispatch(request, *args, **kwargs)</pre>
- <span>...</span>
- </li>
- </ol>
- <ol start='91' class="post-context" id="post140502184195400">
- <li onclick="toggle('pre140502184195400', 'post140502184195400')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184195400', 'post140502184195400')">
- <pre> # take name and docstring from class</pre>
- </li>
- <li onclick="toggle('pre140502184195400', 'post140502184195400')">
- <pre> update_wrapper(view, cls, updated=())</pre>
- </li>
- <li onclick="toggle('pre140502184195400', 'post140502184195400')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184195400', 'post140502184195400')">
- <pre> # and possible attributes set by decorators</pre>
- </li>
- <li onclick="toggle('pre140502184195400', 'post140502184195400')">
- <pre> # like csrf_exempt from dispatch</pre>
- </li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140502184195400')">
- <span>▶</span> Local vars
- </a>
- </div>
- <table class="vars" id="v140502184195400">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>action</td>
- <td class="code">
- <pre>'update'</pre>
- </td>
- </tr>
- <tr>
- <td>actions</td>
- <td class="code">
- <pre>{'delete': 'destroy',
- 'get': 'retrieve',
- 'patch': 'partial_update',
- 'put': 'update'}</pre>
- </td>
- </tr>
- <tr>
- <td>args</td>
- <td class="code">
- <pre>()</pre>
- </td>
- </tr>
- <tr>
- <td>cls</td>
- <td class="code">
- <pre><class 'dating.views.DatingMemberView'></pre>
- </td>
- </tr>
- <tr>
- <td>handler</td>
- <td class="code">
- <pre><bound method DatingMemberView.update of <dating.views.DatingMemberView object at 0x7fc937998b70>></pre>
- </td>
- </tr>
- <tr>
- <td>initkwargs</td>
- <td class="code">
- <pre>{'suffix': 'Instance'}</pre>
- </td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code">
- <pre>{'pk': '5df943a9-9deb-41e2-abb8-ecae7179c29e'}</pre>
- </td>
- </tr>
- <tr>
- <td>method</td>
- <td class="code">
- <pre>'put'</pre>
- </td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code">
- <pre><WSGIRequest: PATCH '/api/v1/dating/5df943a9-9deb-41e2-abb8-ecae7179c29e/'></pre>
- </td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code">
- <pre><dating.views.DatingMemberView object at 0x7fc937998b70></pre>
- </td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame user">
- <code>/usr/local/lib/python3.5/site-packages/rest_framework/views.py</code> in
- <code>dispatch</code>
- <div class="context" id="c140502184196360">
- <ol start="482" class="pre-context" id="pre140502184196360">
- <li onclick="toggle('pre140502184196360', 'post140502184196360')">
- <pre> self.http_method_not_allowed)</pre>
- </li>
- <li onclick="toggle('pre140502184196360', 'post140502184196360')">
- <pre> else:</pre>
- </li>
- <li onclick="toggle('pre140502184196360', 'post140502184196360')">
- <pre> handler = self.http_method_not_allowed</pre>
- </li>
- <li onclick="toggle('pre140502184196360', 'post140502184196360')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184196360', 'post140502184196360')">
- <pre> response = handler(request, *args, **kwargs)</pre>
- </li>
- <li onclick="toggle('pre140502184196360', 'post140502184196360')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184196360', 'post140502184196360')">
- <pre> except Exception as exc:</pre>
- </li>
- </ol>
- <ol start="489" class="context-line">
- <li onclick="toggle('pre140502184196360', 'post140502184196360')">
- <pre>
- response = self.handle_exception(exc)</pre>
- <span>...</span>
- </li>
- </ol>
- <ol start='490' class="post-context" id="post140502184196360">
- <li onclick="toggle('pre140502184196360', 'post140502184196360')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184196360', 'post140502184196360')">
- <pre> self.response = self.finalize_response(request, response, *args, **kwargs)</pre>
- </li>
- <li onclick="toggle('pre140502184196360', 'post140502184196360')">
- <pre> return self.response</pre>
- </li>
- <li onclick="toggle('pre140502184196360', 'post140502184196360')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184196360', 'post140502184196360')">
- <pre> def options(self, request, *args, **kwargs):</pre>
- </li>
- <li onclick="toggle('pre140502184196360', 'post140502184196360')">
- <pre> """</pre>
- </li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140502184196360')">
- <span>▶</span> Local vars
- </a>
- </div>
- <table class="vars" id="v140502184196360">
- <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 DatingMemberView.partial_update of <dating.views.DatingMemberView object at 0x7fc937998b70>></pre>
- </td>
- </tr>
- <tr>
- <td>kwargs</td>
- <td class="code">
- <pre>{'pk': '5df943a9-9deb-41e2-abb8-ecae7179c29e'}</pre>
- </td>
- </tr>
- <tr>
- <td>request</td>
- <td class="code">
- <pre><rest_framework.request.Request object at 0x7fc9378ea898></pre>
- </td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code">
- <pre><dating.views.DatingMemberView object at 0x7fc937998b70></pre>
- </td>
- </tr>
- </tbody>
- </table>
- </li>
- <li class="frame user">
- <code>/usr/local/lib/python3.5/site-packages/rest_framework/views.py</code> in
- <code>handle_exception</code>
- <div class="context" id="c140502184196872">
- <ol start="444" class="pre-context" id="pre140502184196872">
- <li onclick="toggle('pre140502184196872', 'post140502184196872')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184196872', 'post140502184196872')">
- <pre> context = self.get_exception_handler_context()</pre>
- </li>
- <li onclick="toggle('pre140502184196872', 'post140502184196872')">
- <pre> response = exception_handler(exc, context)</pre>
- </li>
- <li onclick="toggle('pre140502184196872', 'post140502184196872')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184196872', 'post140502184196872')">
- <pre> if response is None:</pre>
- </li>
- <li onclick="toggle('pre140502184196872', 'post140502184196872')">
- <pre> self.raise_uncaught_exception(exc)</pre>
- </li>
- <li onclick="toggle('pre140502184196872', 'post140502184196872')">
- <pre></pre>
- </li>
- </ol>
- <ol start="451" class="context-line">
- <li onclick="toggle('pre140502184196872', 'post140502184196872')">
- <pre>
- response.exception = True</pre>
- <span>...</span>
- </li>
- </ol>
- <ol start='452' class="post-context" id="post140502184196872">
- <li onclick="toggle('pre140502184196872', 'post140502184196872')">
- <pre> return response</pre>
- </li>
- <li onclick="toggle('pre140502184196872', 'post140502184196872')">
- <pre></pre>
- </li>
- <li onclick="toggle('pre140502184196872', 'post140502184196872')">
- <pre> def raise_uncaught_exception(self, exc):</pre>
- </li>
- <li onclick="toggle('pre140502184196872', 'post140502184196872')">
- <pre> if settings.DEBUG:</pre>
- </li>
- <li onclick="toggle('pre140502184196872', 'post140502184196872')">
- <pre> request = self.request</pre>
- </li>
- <li onclick="toggle('pre140502184196872', 'post140502184196872')">
- <pre> renderer_format = getattr(request.accepted_renderer, 'format')</pre>
- </li>
- </ol>
- </div>
- <div class="commands">
- <a href="#" onclick="return varToggle(this, '140502184196872')">
- <span>▶</span> Local vars
- </a>
- </div>
- <table class="vars" id="v140502184196872">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>context</td>
- <td class="code">
- <pre>{'args': (),
- 'kwargs': {'pk': '5df943a9-9deb-41e2-abb8-ecae7179c29e'},
- 'request': <rest_framework.request.Request object at 0x7fc9378ea898>,
- 'view': <dating.views.DatingMemberView object at 0x7fc937998b70>}</pre>
- </td>
- </tr>
- <tr>
- <td>exc</td>
- <td class="code">
- <pre>ValueError('The following fields do not exist in this model or are m2m fields: images, user_permissions, groups',)</pre>
- </td>
- </tr>
- <tr>
- <td>exception_handler</td>
- <td class="code">
- <pre><function custom_exception_handler at 0x7fc9375d8048></pre>
- </td>
- </tr>
- <tr>
- <td>response</td>
- <td class="code">
- <pre>{'errors': []}</pre>
- </td>
- </tr>
- <tr>
- <td>self</td>
- <td class="code">
- <pre><dating.views.DatingMemberView object at 0x7fc937998b70></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/dating/5df943a9-9deb-41e2-abb8-ecae7179c29e/">
- <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: PATCH
- Request URL: http://phuketon.dvhs.pro/api/v1/dating/5df943a9-9deb-41e2-abb8-ecae7179c29e/
- Django Version: 1.11
- Python Version: 3.5.4
- Installed Applications:
- ('django.contrib.auth',
- 'django.contrib.contenttypes',
- 'django.contrib.sessions',
- 'django.contrib.messages',
- 'django.contrib.staticfiles',
- 'django.contrib.sites',
- 'django.contrib.sitemaps',
- 'django.contrib.gis',
- 'django.forms',
- 'suit',
- 'suit_redactor',
- 'mptt',
- 'constance',
- 'constance.backends.database',
- 'admin_view_permission',
- 'django.contrib.admin',
- 'corsheaders',
- 'django_twilio',
- 'push_notifications',
- 'rest_framework',
- 'rest_framework.authtoken',
- 'rest_auth',
- 'rest_auth.registration',
- 'rest_framework_gis',
- 'sorl.thumbnail',
- 'datetimewidget',
- 'adminsortable2',
- 'channels',
- 'channels_api',
- 'expander',
- 'multiselectfield',
- 'django_filters',
- 'sekizai',
- 'meta',
- 'star_ratings',
- 'core',
- 'files',
- 'authentication',
- 'users',
- 'pages',
- 'exchange_rates',
- 'categories',
- 'advertise',
- 'articles',
- 'forum',
- 'chat',
- 'weather',
- 'blacklists',
- 'dating',
- 'maps',
- 'claims',
- 'admin_push',
- 'gunicorn',
- 'rest_framework_swagger')
- Installed Middleware:
- ('django.contrib.sessions.middleware.SessionMiddleware',
- 'corsheaders.middleware.CorsMiddleware',
- 'django.middleware.common.CommonMiddleware',
- 'django.middleware.csrf.CsrfViewMiddleware',
- 'django.contrib.auth.middleware.AuthenticationMiddleware',
- 'django.contrib.messages.middleware.MessageMiddleware',
- 'django.middleware.clickjacking.XFrameOptionsMiddleware',
- 'django.middleware.security.SecurityMiddleware',
- 'django.middleware.locale.LocaleMiddleware',
- 'core.middleware.ActiveUserMiddleware')
- Traceback:
- File "/usr/local/lib/python3.5/site-packages/rest_framework/views.py" in dispatch
- 486. response = handler(request, *args, **kwargs)
- File "/app/dating/views.py" in partial_update
- 125. serializer.save()
- File "/app/dating/serializers.py" in save
- 169. self.instance.save(update_fields=fields)
- File "/usr/local/lib/python3.5/site-packages/django/contrib/auth/base_user.py" in save
- 80. super(AbstractBaseUser, self).save(*args, **kwargs)
- File "/usr/local/lib/python3.5/site-packages/django/db/models/base.py" in save
- 792. % ', '.join(non_model_fields))
- During handling of the above exception (The following fields do not exist in this model or are m2m fields: images, user_permissions, groups), another exception occurred:
- File "/usr/local/lib/python3.5/site-packages/django/core/handlers/exception.py" in inner
- 41. response = get_response(request)
- File "/usr/local/lib/python3.5/site-packages/django/core/handlers/base.py" in _legacy_get_response
- 249. response = self._get_response(request)
- File "/usr/local/lib/python3.5/site-packages/django/core/handlers/base.py" in _get_response
- 187. response = self.process_exception_by_middleware(e, request)
- File "/usr/local/lib/python3.5/site-packages/django/core/handlers/base.py" in _get_response
- 185. response = wrapped_callback(request, *callback_args, **callback_kwargs)
- File "/usr/local/lib/python3.5/site-packages/django/views/decorators/csrf.py" in wrapped_view
- 58. return view_func(*args, **kwargs)
- File "/usr/local/lib/python3.5/site-packages/rest_framework/viewsets.py" in view
- 90. return self.dispatch(request, *args, **kwargs)
- File "/usr/local/lib/python3.5/site-packages/rest_framework/views.py" in dispatch
- 489. response = self.handle_exception(exc)
- File "/usr/local/lib/python3.5/site-packages/rest_framework/views.py" in handle_exception
- 451. response.exception = True
- Exception Type: AttributeError at /api/v1/dating/5df943a9-9deb-41e2-abb8-ecae7179c29e/
- Exception Value: 'dict' object has no attribute 'exception'
- </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>TTT (qwerty@gmail.com)</p>
- <h3 id="get-info">GET</h3>
- <p>No GET data</p>
- <h3 id="post-info">POST</h3>
- <table class="req">
- <thead>
- <tr>
- <th>Variable</th>
- <th>Value</th>
- </tr>
- </thead>
- <tbody>
- </tbody>
- </table>
- <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>CONTENT_LENGTH</td>
- <td class="code">
- <pre>'144'</pre>
- </td>
- </tr>
- <tr>
- <td>CONTENT_TYPE</td>
- <td class="code">
- <pre>'multipart/form-data; boundary=----WebKitFormBoundarycX8x4T68Xg3iE2zQ'</pre>
- </td>
- </tr>
- <tr>
- <td>HTTP_ACCEPT</td>
- <td class="code">
- <pre>'*/*'</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>'ru,uk;q=0.9,en;q=0.8'</pre>
- </td>
- </tr>
- <tr>
- <td>HTTP_AUTHORIZATION</td>
- <td class="code">
- <pre>'Token 7321a5b9f3805ba1a1b65a96aece959168dad8a3'</pre>
- </td>
- </tr>
- <tr>
- <td>HTTP_CACHE_CONTROL</td>
- <td class="code">
- <pre>'no-cache'</pre>
- </td>
- </tr>
- <tr>
- <td>HTTP_CONNECTION</td>
- <td class="code">
- <pre>'close'</pre>
- </td>
- </tr>
- <tr>
- <td>HTTP_HOST</td>
- <td class="code">
- <pre>'phuketon.dvhs.pro'</pre>
- </td>
- </tr>
- <tr>
- <td>HTTP_ORIGIN</td>
- <td class="code">
- <pre>'chrome-extension://fhbjgbiflinjbdggehcddcbncdddomop'</pre>
- </td>
- </tr>
- <tr>
- <td>HTTP_POSTMAN_TOKEN</td>
- <td class="code">
- <pre>'1a421c8d-8e5d-c9d3-8025-d1dce92edc25'</pre>
- </td>
- </tr>
- <tr>
- <td>HTTP_USER_AGENT</td>
- <td class="code">
- <pre>('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_1) AppleWebKit/537.36 (KHTML, '
- 'like Gecko) Chrome/63.0.3239.132 Safari/537.36')</pre>
- </td>
- </tr>
- <tr>
- <td>HTTP_X_FORWARDED_FOR</td>
- <td class="code">
- <pre>'49.230.231.215, 172.17.0.30'</pre>
- </td>
- </tr>
- <tr>
- <td>HTTP_X_FORWARDED_PORT</td>
- <td class="code">
- <pre>'80'</pre>
- </td>
- </tr>
- <tr>
- <td>HTTP_X_FORWARDED_PROTO</td>
- <td class="code">
- <pre>'http'</pre>
- </td>
- </tr>
- <tr>
- <td>HTTP_X_FORWARDED_SSL</td>
- <td class="code">
- <pre>'off'</pre>
- </td>
- </tr>
- <tr>
- <td>HTTP_X_REAL_IP</td>
- <td class="code">
- <pre>'49.230.231.215'</pre>
- </td>
- </tr>
- <tr>
- <td>PATH_INFO</td>
- <td class="code">
- <pre>'/api/v1/dating/5df943a9-9deb-41e2-abb8-ecae7179c29e/'</pre>
- </td>
- </tr>
- <tr>
- <td>QUERY_STRING</td>
- <td class="code">
- <pre>''</pre>
- </td>
- </tr>
- <tr>
- <td>RAW_URI</td>
- <td class="code">
- <pre>'/api/v1/dating/5df943a9-9deb-41e2-abb8-ecae7179c29e/'</pre>
- </td>
- </tr>
- <tr>
- <td>REMOTE_ADDR</td>
- <td class="code">
- <pre>'172.17.0.22'</pre>
- </td>
- </tr>
- <tr>
- <td>REMOTE_PORT</td>
- <td class="code">
- <pre>'41334'</pre>
- </td>
- </tr>
- <tr>
- <td>REQUEST_METHOD</td>
- <td class="code">
- <pre>'PATCH'</pre>
- </td>
- </tr>
- <tr>
- <td>SCRIPT_NAME</td>
- <td class="code">
- <pre>''</pre>
- </td>
- </tr>
- <tr>
- <td>SERVER_NAME</td>
- <td class="code">
- <pre>'0.0.0.0'</pre>
- </td>
- </tr>
- <tr>
- <td>SERVER_PORT</td>
- <td class="code">
- <pre>'5000'</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/19.6.0'</pre>
- </td>
- </tr>
- <tr>
- <td>gunicorn.socket</td>
- <td class="code">
- <pre><socket.socket fd=15, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('172.17.0.17', 5000), raddr=('172.17.0.22', 41334)></pre>
- </td>
- </tr>
- <tr>
- <td>wsgi.errors</td>
- <td class="code">
- <pre><gunicorn.http.wsgi.WSGIErrorsWrapper object at 0x7fc93791b668></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 0x7fc93791bcc0></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>False</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>config</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>(('Author', 'sahalin.test@gmail.com'),)</pre>
- </td>
- </tr>
- <tr>
- <td>ALLOWED_HOSTS</td>
- <td class="code">
- <pre>['*']</pre>
- </td>
- </tr>
- <tr>
- <td>APPEND_SLASH</td>
- <td class="code">
- <pre>True</pre>
- </td>
- </tr>
- <tr>
- <td>APP_GROUP_PERMISSIONS</td>
- <td class="code">
- <pre>{'events_calendar': ['is_food_truck_admin', 'is_company_admin']}</pre>
- </td>
- </tr>
- <tr>
- <td>AUTHENTICATION_BACKENDS</td>
- <td class="code">
- <pre>('config.auth_backend.PasswordlessAuthBackend',)</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>'users.User'</pre>
- </td>
- </tr>
- <tr>
- <td>AWS_HEADERS</td>
- <td class="code">
- <pre>{'Cache-Control': 'max-age=86400, s-maxage=86400, must-revalidate'}</pre>
- </td>
- </tr>
- <tr>
- <td>BOSS_EMAIL</td>
- <td class="code">
- <pre>'sahalin.test@gmail.com'</pre>
- </td>
- </tr>
- <tr>
- <td>BROKER_URL</td>
- <td class="code">
- <pre>'amqp://guest:guest@rabbitmq:5672//'</pre>
- </td>
- </tr>
- <tr>
- <td>BUILDING_MANAGER</td>
- <td class="code">
- <pre>'building_manager'</pre>
- </td>
- </tr>
- <tr>
- <td>CACHES</td>
- <td class="code">
- <pre>{'default': {'BACKEND': 'redis_cache.RedisCache',
- 'LOCATION': 'phuketon_redis:6379',
- 'OPTIONS': {'CONNECTION_POOL_CLASS': 'redis.BlockingConnectionPool',
- 'CONNECTION_POOL_CLASS_KWARGS': {'max_connections': 50,
- 'timeout': 20},
- 'DB': 0,
- 'PARSER_CLASS': 'redis.connection.HiredisParser',
- 'PASSWORD': '********************'}}}</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>CELERY_ACCEPT_CONTENT</td>
- <td class="code">
- <pre>['json']</pre>
- </td>
- </tr>
- <tr>
- <td>CELERY_IMPORTS</td>
- <td class="code">
- <pre>('config.tasks',)</pre>
- </td>
- </tr>
- <tr>
- <td>CELERY_RESULT_BACKEND</td>
- <td class="code">
- <pre>'amqp'</pre>
- </td>
- </tr>
- <tr>
- <td>CELERY_RESULT_SERIALIZER</td>
- <td class="code">
- <pre>'json'</pre>
- </td>
- </tr>
- <tr>
- <td>CELERY_TASK_SERIALIZER</td>
- <td class="code">
- <pre>'json'</pre>
- </td>
- </tr>
- <tr>
- <td>CHANNELS_API</td>
- <td class="code">
- <pre>'********************'</pre>
- </td>
- </tr>
- <tr>
- <td>COMPANY_ADMIN</td>
- <td class="code">
- <pre>'company_admin'</pre>
- </td>
- </tr>
- <tr>
- <td>CONFIGURATION</td>
- <td class="code">
- <pre>'config.Production'</pre>
- </td>
- </tr>
- <tr>
- <td>CONSTANCE_ADDITIONAL_FIELDS</td>
- <td class="code">
- <pre>{'img_quality_choices': [<class 'django.forms.fields.ChoiceField'>,
- {'choices': ((10, 10),
- (15, 15),
- (20, 20),
- (25, 25),
- (30, 30),
- (35, 35),
- (40, 40),
- (45, 45),
- (50, 50),
- (55, 55),
- (60, 60),
- (65, 65),
- (70, 70),
- (75, 75),
- (80, 80),
- (85, 85),
- (90, 90),
- (95, 95),
- (100, 100)),
- 'widget': <django.forms.widgets.Select object at 0x7fc9388207f0>}],
- 'img_size_choices': [<class 'django.forms.fields.ChoiceField'>,
- {'choices': ((100, 100),
- (110, 110),
- (120, 120),
- (130, 130),
- (140, 140),
- (150, 150),
- (160, 160),
- (170, 170),
- (180, 180),
- (190, 190),
- (200, 200),
- (210, 210),
- (220, 220),
- (230, 230),
- (240, 240),
- (250, 250),
- (260, 260),
- (270, 270),
- (280, 280),
- (290, 290),
- (300, 300),
- (310, 310),
- (320, 320),
- (330, 330),
- (340, 340),
- (350, 350),
- (360, 360),
- (370, 370),
- (380, 380),
- (390, 390),
- (400, 400),
- (410, 410),
- (420, 420),
- (430, 430),
- (440, 440),
- (450, 450),
- (460, 460),
- (470, 470),
- (480, 480),
- (490, 490),
- (500, 500),
- (510, 510),
- (520, 520),
- (530, 530),
- (540, 540),
- (550, 550),
- (560, 560),
- (570, 570),
- (580, 580),
- (590, 590),
- (600, 600),
- (610, 610),
- (620, 620),
- (630, 630),
- (640, 640),
- (650, 650),
- (660, 660),
- (670, 670),
- (680, 680),
- (690, 690),
- (700, 700),
- (710, 710),
- (720, 720),
- (730, 730),
- (740, 740),
- (750, 750),
- (760, 760),
- (770, 770),
- (780, 780),
- (790, 790),
- (800, 800),
- (810, 810),
- (820, 820),
- (830, 830),
- (840, 840),
- (850, 850),
- (860, 860),
- (870, 870),
- (880, 880),
- (890, 890),
- (900, 900),
- (910, 910),
- (920, 920),
- (930, 930),
- (940, 940),
- (950, 950),
- (960, 960),
- (970, 970),
- (980, 980),
- (990, 990),
- (1000, 1000),
- (1010, 1010),
- (1020, 1020),
- (1030, 1030),
- (1040, 1040),
- (1050, 1050),
- (1060, 1060),
- (1070, 1070),
- (1080, 1080),
- (1090, 1090),
- (1100, 1100),
- (1110, 1110),
- (1120, 1120),
- (1130, 1130),
- (1140, 1140),
- (1150, 1150),
- (1160, 1160),
- (1170, 1170),
- (1180, 1180),
- (1190, 1190),
- (1200, 1200),
- (1210, 1210),
- (1220, 1220),
- (1230, 1230),
- (1240, 1240),
- (1250, 1250),
- (1260, 1260),
- (1270, 1270),
- (1280, 1280),
- (1290, 1290),
- (1300, 1300),
- (1310, 1310),
- (1320, 1320),
- (1330, 1330),
- (1340, 1340),
- (1350, 1350),
- (1360, 1360),
- (1370, 1370),
- (1380, 1380),
- (1390, 1390),
- (1400, 1400),
- (1410, 1410),
- (1420, 1420),
- (1430, 1430),
- (1440, 1440),
- (1450, 1450),
- (1460, 1460),
- (1470, 1470),
- (1480, 1480),
- (1490, 1490),
- (1500, 1500)),
- 'widget': <django.forms.widgets.Select object at 0x7fc9388207b8>}]}</pre>
- </td>
- </tr>
- <tr>
- <td>CONSTANCE_BACKEND</td>
- <td class="code">
- <pre>'constance.backends.database.DatabaseBackend'</pre>
- </td>
- </tr>
- <tr>
- <td>CONSTANCE_CONFIG</td>
- <td class="code">
- <pre>{'DEFAULT_RADIUS_SEARCH': (1, 'Радиус поиска по умолчанию', <class 'int'>),
- 'IMG_MAX_SIZE_HEIGHT': (1000,
- 'Максимальная высота изображений',
- 'img_size_choices'),
- 'IMG_MAX_SIZE_WIDTH': (1000,
- 'Максмальная ширина изображений',
- 'img_size_choices'),
- 'IMG_QUALITY': (75, 'Качество изображения', 'img_quality_choices'),
- 'MAX_DATING_IMG_UPLOAD': (5,
- 'Разрешенное количество фотографий в знакомствах',
- <class 'int'>),
- 'NORTH_LATITUDE': (7.94662, 'Широта. Правый верхний угол.', <class 'float'>),
- 'NORTH_LONGITUDE': (98.396523,
- 'Долгота. Правый верхний угол.',
- <class 'float'>),
- 'SOUTH_LATITUDE': (7.932896, 'Широта. Левый нижний угол.', <class 'float'>),
- 'SOUTH_LONGITUDE': (98.375406, 'Долгота. Левый нижний угол.', <class 'float'>)}</pre>
- </td>
- </tr>
- <tr>
- <td>CONSTANCE_CONFIG_FIELDSETS</td>
- <td class="code">
- <pre>{'Знакомства': ('MAX_DATING_IMG_UPLOAD',),
- 'Карты': ('DEFAULT_RADIUS_SEARCH',
- 'NORTH_LATITUDE',
- 'NORTH_LONGITUDE',
- 'SOUTH_LATITUDE',
- 'SOUTH_LONGITUDE'),
- 'Файлы': ('IMG_QUALITY', 'IMG_MAX_SIZE_WIDTH', 'IMG_MAX_SIZE_HEIGHT')}</pre>
- </td>
- </tr>
- <tr>
- <td>CORS_ALLOW_CREDENTIALS</td>
- <td class="code">
- <pre>True</pre>
- </td>
- </tr>
- <tr>
- <td>CORS_ORIGIN_ALLOW_ALL</td>
- <td class="code">
- <pre>True</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_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>CUSTOMER</td>
- <td class="code">
- <pre>'customer'</pre>
- </td>
- </tr>
- <tr>
- <td>DATABASES</td>
- <td class="code">
- <pre>{'default': {'ATOMIC_REQUESTS': False,
- 'AUTOCOMMIT': True,
- 'CONN_MAX_AGE': 0,
- 'ENGINE': 'django.contrib.gis.db.backends.postgis',
- 'HOST': 'db',
- 'NAME': 'phuketon',
- 'OPTIONS': {},
- 'PASSWORD': '********************',
- 'PORT': '5432',
- 'TEST': {'CHARSET': None,
- 'COLLATION': None,
- 'MIRROR': None,
- 'NAME': None},
- 'TIME_ZONE': None,
- 'USER': 'root'}}</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>'Y-m-d H:i:s'</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>'1'</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>'sahalin.test@gmail.com'</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>DOTENV_LOADED</td>
- <td class="code">
- <pre>None</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>'smtp.gmail.com'</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>'sahalin.test@gmail.com'</pre>
- </td>
- </tr>
- <tr>
- <td>EMAIL_PORT</td>
- <td class="code">
- <pre>587</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>True</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>5242880</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>['fixtures']</pre>
- </td>
- </tr>
- <tr>
- <td>FOOD_TRUCK_ADMIN</td>
- <td class="code">
- <pre>'food_truck_admin'</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>GEOLOCATION_MAP_DEFAULT</td>
- <td class="code">
- <pre>{'lat': 38.896614, 'lng': -77.036321}</pre>
- </td>
- </tr>
- <tr>
- <td>GOOGLE_API_KEY</td>
- <td class="code">
- <pre>'********************'</pre>
- </td>
- </tr>
- <tr>
- <td>HELP_TEXT</td>
- <td class="code">
- <pre>{'PHONE': 'Format: <b>111-222-3333</b>'}</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.auth',
- 'django.contrib.contenttypes',
- 'django.contrib.sessions',
- 'django.contrib.messages',
- 'django.contrib.staticfiles',
- 'django.contrib.sites',
- 'django.contrib.sitemaps',
- 'django.contrib.gis',
- 'django.forms',
- 'suit',
- 'suit_redactor',
- 'mptt',
- 'constance',
- 'constance.backends.database',
- 'admin_view_permission',
- 'django.contrib.admin',
- 'corsheaders',
- 'django_twilio',
- 'push_notifications',
- 'rest_framework',
- 'rest_framework.authtoken',
- 'rest_auth',
- 'rest_auth.registration',
- 'rest_framework_gis',
- 'sorl.thumbnail',
- 'datetimewidget',
- 'adminsortable2',
- 'channels',
- 'channels_api',
- 'expander',
- 'multiselectfield',
- 'django_filters',
- 'sekizai',
- 'meta',
- 'star_ratings',
- 'core',
- 'files',
- 'authentication',
- 'users',
- 'pages',
- 'exchange_rates',
- 'categories',
- 'advertise',
- 'articles',
- 'forum',
- 'chat',
- 'weather',
- 'blacklists',
- 'dating',
- 'maps',
- 'claims',
- 'admin_push',
- 'gunicorn',
- 'rest_framework_swagger')</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'),
- ('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 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>'ru'</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>['/app/locale']</pre>
- </td>
- </tr>
- <tr>
- <td>LOGGING</td>
- <td class="code">
- <pre>{'disable_existing_loggers': False,
- 'filters': {'require_debug_true': {'()': 'django.utils.log.RequireDebugTrue'}},
- 'formatters': {'django.server': {'()': 'django.utils.log.ServerFormatter',
- 'format': '[%(server_time)s] %(message)s'},
- 'simple': {'format': '%(levelname)s %(message)s'},
- 'verbose': {'format': '%(levelname)s %(asctime)s %(module)s '
- '%(process)d %(thread)d %(message)s'}},
- 'handlers': {'console': {'class': 'logging.StreamHandler',
- 'filters': ['require_debug_true'],
- 'formatter': 'simple',
- 'level': 'INFO'},
- 'django.server': {'class': 'logging.StreamHandler',
- 'formatter': 'django.server',
- 'level': 'INFO'},
- 'file': {'backupCount': 3,
- 'class': 'logging.handlers.RotatingFileHandler',
- 'filename': '/app/logs/django.log',
- 'formatter': 'verbose',
- 'maxBytes': 1024000},
- 'mail_admins': {'class': 'django.utils.log.AdminEmailHandler',
- 'level': 'ERROR'}},
- 'loggers': {'django': {'handlers': ['console', 'file'], 'propagate': True},
- 'django.request': {'handlers': ['mail_admins'],
- 'level': 'ERROR',
- 'propagate': False},
- 'django.server': {'handlers': ['django.server'],
- 'level': 'INFO',
- 'propagate': False}},
- 'version': 1}</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>'/'</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>MAX_STARS_RATING_SCORE</td>
- <td class="code">
- <pre>5</pre>
- </td>
- </tr>
- <tr>
- <td>MEDIA_ROOT</td>
- <td class="code">
- <pre>'/app/media'</pre>
- </td>
- </tr>
- <tr>
- <td>MEDIA_URL</td>
- <td class="code">
- <pre>'/media/'</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>None</pre>
- </td>
- </tr>
- <tr>
- <td>MIDDLEWARE_CLASSES</td>
- <td class="code">
- <pre>('django.contrib.sessions.middleware.SessionMiddleware',
- 'corsheaders.middleware.CorsMiddleware',
- 'django.middleware.common.CommonMiddleware',
- 'django.middleware.csrf.CsrfViewMiddleware',
- 'django.contrib.auth.middleware.AuthenticationMiddleware',
- 'django.contrib.messages.middleware.MessageMiddleware',
- 'django.middleware.clickjacking.XFrameOptionsMiddleware',
- 'django.middleware.security.SecurityMiddleware',
- 'django.middleware.locale.LocaleMiddleware',
- 'core.middleware.ActiveUserMiddleware')</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>PROTOCOL_FOR_ABSOLUTE_URL</td>
- <td class="code">
- <pre>'http'</pre>
- </td>
- </tr>
- <tr>
- <td>PUSH_NOTIFICATIONS_MESSAGES</td>
- <td class="code">
- <pre>{'ADMIN_PUSH': {'msg': '', 'type': 'ADMIN_PUSH'},
- 'CREATE_POST': {'msg': 'Новый пост от пользователя {username}',
- 'type': 'CREATE_POST'},
- 'SEND_MESSAGE': {'msg': 'Новое сообщение от {username}',
- 'type': 'SEND_MESSAGE'}}</pre>
- </td>
- </tr>
- <tr>
- <td>PUSH_NOTIFICATIONS_SETTINGS</td>
- <td class="code">
- <pre>{'APNS_TOPIC': '',
- 'APNS_USE_ALTERNATIVE_PORT': False,
- 'APNS_USE_SANDBOX': True,
- 'APPLICATIONS': {'android_live': {'API_KEY': '********************',
- 'APPLICATION_ID': 'android_live',
- 'ERROR_TIMEOUT': None,
- 'MAX_RECIPIENTS': 1000,
- 'PLATFORM': 'FCM',
- 'POST_URL': 'https://fcm.googleapis.com/fcm/send'},
- 'android_sandbox': {'API_KEY': '********************',
- 'APPLICATION_ID': 'android_sandbox',
- 'ERROR_TIMEOUT': None,
- 'MAX_RECIPIENTS': 1000,
- 'PLATFORM': 'FCM',
- 'POST_URL': 'https://fcm.googleapis.com/fcm/send'},
- 'ios_live': {'APPLICATION_ID': 'ios_live',
- 'CERTIFICATE': '/app/media_private/push_apns_certs/phuketonProd.pem',
- 'PLATFORM': 'APNS',
- 'TOPIC': 'com.NGSE.PhuketON',
- 'USE_ALTERNATIVE_PORT': False,
- 'USE_SANDBOX': False},
- 'ios_sandbox': {'APPLICATION_ID': 'ios_sandbox',
- 'CERTIFICATE': '/app/media_private/push_apns_certs/phuketonDev.pem',
- 'PLATFORM': 'APNS',
- 'TOPIC': 'com.NGSE.PhuketON',
- 'USE_ALTERNATIVE_PORT': False,
- 'USE_SANDBOX': True}},
- 'CONFIG': 'push_notifications.conf.AppConfig',
- 'FCM_ERROR_TIMEOUT': None,
- 'FCM_MAX_RECIPIENTS': 1000,
- 'FCM_POST_URL': 'https://fcm.googleapis.com/fcm/send',
- 'GCM_ERROR_TIMEOUT': None,
- 'GCM_MAX_RECIPIENTS': 1000,
- 'GCM_POST_URL': 'https://android.googleapis.com/gcm/send',
- 'UPDATE_ON_DUPLICATE_REG_ID': False,
- 'USER_MODEL': 'users.User',
- 'WNS_ACCESS_URL': 'https://login.live.com/accesstoken.srf',
- 'WNS_PACKAGE_SECURITY_ID': None,
- 'WNS_SECRET_KEY': '********************'}</pre>
- </td>
- </tr>
- <tr>
- <td>QUALITY_CHOICES</td>
- <td class="code">
- <pre>((10, 10),
- (15, 15),
- (20, 20),
- (25, 25),
- (30, 30),
- (35, 35),
- (40, 40),
- (45, 45),
- (50, 50),
- (55, 55),
- (60, 60),
- (65, 65),
- (70, 70),
- (75, 75),
- (80, 80),
- (85, 85),
- (90, 90),
- (95, 95),
- (100, 100))</pre>
- </td>
- </tr>
- <tr>
- <td>REST_FRAMEWORK</td>
- <td class="code">
- <pre>{'DATETIME_FORMAT': '%Y-%m-%dT%H:%M:%S%z',
- 'DEFAULT_AUTHENTICATION_CLASSES': ('rest_framework.authentication.SessionAuthentication',
- 'rest_framework.authentication.TokenAuthentication'),
- 'DEFAULT_FILTER_BACKENDS': ('django_filters.rest_framework.DjangoFilterBackend',),
- 'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.LimitOffsetPagination',
- 'DEFAULT_PERMISSION_CLASSES': ['rest_framework.permissions.AllowAny'],
- 'DEFAULT_RENDERER_CLASSES': ('rest_framework.renderers.JSONRenderer',
- 'rest_framework.renderers.BrowsableAPIRenderer'),
- 'EXCEPTION_HANDLER': 'core.custom_exception.custom_exception_handler',
- 'NON_FIELD_ERRORS_KEY': '********************',
- 'PAGE_SIZE': 100}</pre>
- </td>
- </tr>
- <tr>
- <td>ROOT_URLCONF</td>
- <td class="code">
- <pre>'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>SERVER_TYPE</td>
- <td class="code">
- <pre>'dev'</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_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>'config'</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>SITE_DOMAIN</td>
- <td class="code">
- <pre>'phuket.dvhs.pro'</pre>
- </td>
- </tr>
- <tr>
- <td>SITE_ID</td>
- <td class="code">
- <pre>1</pre>
- </td>
- </tr>
- <tr>
- <td>SITE_PROTOCOL</td>
- <td class="code">
- <pre>'http'</pre>
- </td>
- </tr>
- <tr>
- <td>SITE_URL</td>
- <td class="code">
- <pre>'http://phuket.dvhs.pro'</pre>
- </td>
- </tr>
- <tr>
- <td>SIZE_CHOICES</td>
- <td class="code">
- <pre>((100, 100),
- (110, 110),
- (120, 120),
- (130, 130),
- (140, 140),
- (150, 150),
- (160, 160),
- (170, 170),
- (180, 180),
- (190, 190),
- (200, 200),
- (210, 210),
- (220, 220),
- (230, 230),
- (240, 240),
- (250, 250),
- (260, 260),
- (270, 270),
- (280, 280),
- (290, 290),
- (300, 300),
- (310, 310),
- (320, 320),
- (330, 330),
- (340, 340),
- (350, 350),
- (360, 360),
- (370, 370),
- (380, 380),
- (390, 390),
- (400, 400),
- (410, 410),
- (420, 420),
- (430, 430),
- (440, 440),
- (450, 450),
- (460, 460),
- (470, 470),
- (480, 480),
- (490, 490),
- (500, 500),
- (510, 510),
- (520, 520),
- (530, 530),
- (540, 540),
- (550, 550),
- (560, 560),
- (570, 570),
- (580, 580),
- (590, 590),
- (600, 600),
- (610, 610),
- (620, 620),
- (630, 630),
- (640, 640),
- (650, 650),
- (660, 660),
- (670, 670),
- (680, 680),
- (690, 690),
- (700, 700),
- (710, 710),
- (720, 720),
- (730, 730),
- (740, 740),
- (750, 750),
- (760, 760),
- (770, 770),
- (780, 780),
- (790, 790),
- (800, 800),
- (810, 810),
- (820, 820),
- (830, 830),
- (840, 840),
- (850, 850),
- (860, 860),
- (870, 870),
- (880, 880),
- (890, 890),
- (900, 900),
- (910, 910),
- (920, 920),
- (930, 930),
- (940, 940),
- (950, 950),
- (960, 960),
- (970, 970),
- (980, 980),
- (990, 990),
- (1000, 1000),
- (1010, 1010),
- (1020, 1020),
- (1030, 1030),
- (1040, 1040),
- (1050, 1050),
- (1060, 1060),
- (1070, 1070),
- (1080, 1080),
- (1090, 1090),
- (1100, 1100),
- (1110, 1110),
- (1120, 1120),
- (1130, 1130),
- (1140, 1140),
- (1150, 1150),
- (1160, 1160),
- (1170, 1170),
- (1180, 1180),
- (1190, 1190),
- (1200, 1200),
- (1210, 1210),
- (1220, 1220),
- (1230, 1230),
- (1240, 1240),
- (1250, 1250),
- (1260, 1260),
- (1270, 1270),
- (1280, 1280),
- (1290, 1290),
- (1300, 1300),
- (1310, 1310),
- (1320, 1320),
- (1330, 1330),
- (1340, 1340),
- (1350, 1350),
- (1360, 1360),
- (1370, 1370),
- (1380, 1380),
- (1390, 1390),
- (1400, 1400),
- (1410, 1410),
- (1420, 1420),
- (1430, 1430),
- (1440, 1440),
- (1450, 1450),
- (1460, 1460),
- (1470, 1470),
- (1480, 1480),
- (1490, 1490),
- (1500, 1500))</pre>
- </td>
- </tr>
- <tr>
- <td>STAR_RATINGS_RATING_MODEL</td>
- <td class="code">
- <pre>'star_ratings.Rating'</pre>
- </td>
- </tr>
- <tr>
- <td>STAR_RATINGS_RERATE</td>
- <td class="code">
- <pre>True</pre>
- </td>
- </tr>
- <tr>
- <td>STATICFILES_DIRS</td>
- <td class="code">
- <pre>['/app/media/sitemaps/']</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>STATICSITEMAPS_ROOT_DIR</td>
- <td class="code">
- <pre>'/app/media/sitemaps/'</pre>
- </td>
- </tr>
- <tr>
- <td>STATICSITEMAPS_ROOT_SITEMAP</td>
- <td class="code">
- <pre>'core.sitemaps.sitemaps'</pre>
- </td>
- </tr>
- <tr>
- <td>STATICSITEMAPS_URL</td>
- <td class="code">
- <pre>'http://phuket.dvhs.pro/media/sitemaps/'</pre>
- </td>
- </tr>
- <tr>
- <td>STATIC_ROOT</td>
- <td class="code">
- <pre>'/app/static'</pre>
- </td>
- </tr>
- <tr>
- <td>STATIC_URL</td>
- <td class="code">
- <pre>'/static/'</pre>
- </td>
- </tr>
- <tr>
- <td>SUIT_CONFIG</td>
- <td class="code">
- <pre>{'ADMIN_NAME': 'PhuketOn',
- 'CONFIRM_UNSAVED_CHANGES': True,
- 'HEADER_DATE_FORMAT': 'l, j. F Y',
- 'HEADER_TIME_FORMAT': 'H:i',
- 'LIST_PER_PAGE': 15,
- 'MENU': ({'app': 'categories', 'icon': 'icon-list-alt', 'label': 'Категории'},
- {'app': 'articles', 'icon': 'icon-font', 'label': 'Статьи'},
- {'app': 'weather', 'icon': 'icon-tint', 'label': 'Погода'},
- {'app': 'users', 'icon': 'icon-user', 'label': 'Пользователи'},
- {'app': 'blacklists', 'icon': 'icon-lock', 'label': 'Черные списки'},
- {'app': 'claims', 'icon': 'icon-lock', 'label': 'Жалобы'},
- {'app': 'advertise', 'icon': 'icon-bookmark', 'label': 'Реклама'},
- {'app': 'exchange_rates',
- 'icon': 'icon-th-large',
- 'label': 'Курс валют'},
- {'icon': 'icon-map-marker', 'label': 'Карта', 'url': '/admin/map/'},
- {'app': 'files', 'icon': 'icon-picture', 'label': 'Файлы'},
- {'app': 'forum', 'icon': 'icon-book', 'label': 'Форум'},
- {'app': 'star_ratings', 'icon': 'icon-asterisk', 'label': 'Рейтинг'},
- {'app': 'dating', 'icon': 'icon-list', 'label': 'Знакомства'},
- {'app': 'admin_push',
- 'icon': 'icon-envelope',
- 'label': 'PUSH Уведомления'},
- {'app': 'chat', 'icon': 'icon-inbox', 'label': 'Чаты'},
- {'app': 'constance', 'icon': 'icon-cog', 'label': 'Параметры'},
- {'app': 'auth', 'label': 'Права доступа', 'models': ('group',)},
- 'sites'),
- 'MENU_ICONS': {'auth': 'icon-lock', 'sites': 'icon-leaf'},
- 'MENU_OPEN_FIRST_CHILD': True,
- 'SEARCH_URL': '/admin/auth/user/',
- 'SHOW_REQUIRED_ASTERISK': True}</pre>
- </td>
- </tr>
- <tr>
- <td>TEMPLATES</td>
- <td class="code">
- <pre>[{'BACKEND': 'django.template.backends.django.DjangoTemplates',
- 'DIRS': ['/app/templates'],
- 'OPTIONS': {'context_processors': ['django.contrib.auth.context_processors.auth',
- 'django.template.context_processors.debug',
- 'django.template.context_processors.request',
- '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',
- 'sekizai.context_processors.sekizai',
- 'core.context_processors.set_constances'],
- 'debug': True,
- 'loaders': [('django.template.loaders.cached.Loader',
- ['django.template.loaders.filesystem.Loader',
- 'django.template.loaders.app_directories.Loader'])]}}]</pre>
- </td>
- </tr>
- <tr>
- <td>TEMPLATE_DEBUG</td>
- <td class="code">
- <pre>False</pre>
- </td>
- </tr>
- <tr>
- <td>TEMPLATE_LOADERS</td>
- <td class="code">
- <pre>(('django.template.loaders.cached.Loader',
- ('django.template.loaders.filesystem.Loader',
- 'django.template.loaders.app_directories.Loader')),)</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>THUMBNAIL_DEBUG</td>
- <td class="code">
- <pre>True</pre>
- </td>
- </tr>
- <tr>
- <td>THUMBNAIL_DUMMY</td>
- <td class="code">
- <pre>True</pre>
- </td>
- </tr>
- <tr>
- <td>THUMBNAIL_DUMMY_SOURCE</td>
- <td class="code">
- <pre>'https://dummyimage.com/1000/ffffff/000000&text=NO+IMAGE'</pre>
- </td>
- </tr>
- <tr>
- <td>THUMBNAIL_FORMAT</td>
- <td class="code">
- <pre>'PNG'</pre>
- </td>
- </tr>
- <tr>
- <td>THUMBNAIL_URL_TIMEOUT</td>
- <td class="code">
- <pre>2</pre>
- </td>
- </tr>
- <tr>
- <td>TIME_FORMAT</td>
- <td class="code">
- <pre>'"H:i:s"'</pre>
- </td>
- </tr>
- <tr>
- <td>TIME_INPUT_FORMATS</td>
- <td class="code">
- <pre>('%I:%M %p',)</pre>
- </td>
- </tr>
- <tr>
- <td>TIME_ZONE</td>
- <td class="code">
- <pre>'Asia/Bangkok'</pre>
- </td>
- </tr>
- <tr>
- <td>TWILIO_ACCOUNT_SID</td>
- <td class="code">
- <pre>''</pre>
- </td>
- </tr>
- <tr>
- <td>TWILIO_AUTH_TOKEN</td>
- <td class="code">
- <pre>'********************'</pre>
- </td>
- </tr>
- <tr>
- <td>TWILIO_PHONE_NUMBER</td>
- <td class="code">
- <pre>''</pre>
- </td>
- </tr>
- <tr>
- <td>USER_LASTSEEN_TIMEOUT</td>
- <td class="code">
- <pre>604800</pre>
- </td>
- </tr>
- <tr>
- <td>USER_ONLINE_TIMEOUT</td>
- <td class="code">
- <pre>300</pre>
- </td>
- </tr>
- <tr>
- <td>USE_ETAGS</td>
- <td class="code">
- <pre>False</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>False</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>WEEK_DAYS</td>
- <td class="code">
- <pre>(('1', 'Sunday'),
- ('2', 'Monday'),
- ('3', 'Tuesday'),
- ('4', 'Wednesday'),
- ('5', 'Thursday'),
- ('6', 'Friday'),
- ('7', 'Saturday'))</pre>
- </td>
- </tr>
- <tr>
- <td>WSGI_APPLICATION</td>
- <td class="code">
- <pre>'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>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement