(1146, "Table 'belcanto.main_publication' doesn't exist")
Request Method: | GET |
---|---|
Request URL: | http://localhost:8000/ |
Django Version: | 1.7.11 |
Exception Type: | ProgrammingError |
Exception Value: | (1146, "Table 'belcanto.main_publication' doesn't exist") |
Exception Location: | /usr/local/lib/python2.7/site-packages/MySQLdb/connections.py in defaulterrorhandler, line 36 |
Python Executable: | /usr/local/bin/python |
Python Version: | 2.7.15 |
Python Path: | ['/app', '/app', '/usr/local/lib/python27.zip', '/usr/local/lib/python2.7', '/usr/local/lib/python2.7/plat-linux2', '/usr/local/lib/python2.7/lib-tk', '/usr/local/lib/python2.7/lib-old', '/usr/local/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/site-packages'] |
Server time: | Птн, 19 Июн 2020 14:09:33 +0300 |
/usr/local/lib/python2.7/site-packages/django/core/handlers/base.py
in get_response
response = middleware_method(request, callback, callback_args, callback_kwargs)
if response:
break
if response is None:
wrapped_callback = self.make_view_atomic(callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)...
except Exception as e:
# If the view raised an exception, run it through exception
# middleware, and if the exception middleware returns a
# response, use that. Otherwise, reraise the exception.
for middleware_method in self._exception_middleware:
response = middleware_method(request, e)
Variable | Value |
---|---|
e | ProgrammingError(1146, "Table 'belcanto.main_publication' doesn't exist") |
callback_args | () |
resolver_match | ResolverMatch(func=<function blog at 0x7eff5d6bc320>, args=(), kwargs={'template': 'main.shpaml'}, url_name='main_page', app_name='None', namespace='') |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7eff5e89afd0>> |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7eff61bef950> |
request | "<WSGIRequest\npath:/,\nGET:<QueryDict: {}>,\nPOST:<QueryDict: {}>,\nCOOKIES:{},\nMETA:{'BELCANTO_DEBUG': 'on',\n 'BELCANTO_DEV': 'on',\n 'CONTENT_LENGTH': '',\n 'CONTENT_TYPE': 'text/plain',\n u'CSRF_COOKIE': u'icvNJcIX4w44xu1aXs31n1ql3rtQ8CxW',\n 'DJANGO_SETTINGS_MODULE': 'settings',\n 'DJANGO_SPLIT_SETTINGS_MODULE': 'BEL',\n 'GATEWAY_INTERFACE': 'CGI/1.1',\n 'GPG_KEY': 'C01E1CAD5EA2C4F0B8E3571504C367C218ADD4FF',\n 'HOME': '/root',\n 'HOSTNAME': 'af47a8012a10',\n 'HTTP_ACCEPT': '*/*',\n 'HTTP_HOST': 'localhost:8000',\n 'HTTP_USER_AGENT': 'curl/7.58.0',\n 'LANG': 'C.UTF-8',\n 'PATH': '/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',\n 'PATH_INFO': u'/',\n 'PWD': '/app',\n 'PYTHONIOENCODING': 'UTF-8',\n 'PYTHONPATH': '/app',\n 'PYTHON_PIP_VERSION': '19.0.3',\n 'PYTHON_VERSION': '2.7.15',\n 'QUERY_STRING': '',\n 'REDIS_SERVICE_HOST': 'redis',\n 'REMOTE_ADDR': '172.20.0.1',\n 'REMOTE_HOST': '',\n 'REQUEST_METHOD': 'GET',\n 'RUN_MAIN': 'true',\n 'SCRIPT_NAME': u'',\n 'SERVER_NAME': 'af47a8012a10',\n 'SERVER_PORT': '8000',\n 'SERVER_PROTOCOL': 'HTTP/1.1',\n 'SERVER_SOFTWARE': 'WSGIServer/0.1 Python/2.7.15',\n 'SHLVL': '1',\n 'TZ': 'Europe/Moscow',\n '_': '/usr/local/bin/python',\n 'wsgi.errors': <open file '<stderr>', mode 'w' at 0x7eff681141e0>,\n 'wsgi.file_wrapper': <class wsgiref.util.FileWrapper at 0x7eff61a8ce88>,\n 'wsgi.input': <socket._fileobject object at 0x7eff65b14050>,\n 'wsgi.multiprocess': False,\n 'wsgi.multithread': True,\n 'wsgi.run_once': False,\n 'wsgi.url_scheme': 'http',\n 'wsgi.version': (1, 0)}>" |
callback | <function blog at 0x7eff5d6bc320> |
wrapped_callback | <function blog at 0x7eff5d6bc320> |
resolver | <RegexURLResolver 'urls_belcanto' (None:None) ^/> |
callback_kwargs | {'template': 'main.shpaml'} |
response | None |
urlconf | 'urls_belcanto' |
/app/main/views_blog.py
in blog
# Если все категории
if category == "all":
# Если это сайт belcanto
if settings.SITE_ID == 1: # belcanto
# тогда выбираем только "обзоры", "статьи" и "интервью"
objects = Publication.objects.filter(published=True, type__slug__in=['reviews', 'articles', 'interview'])
if not objects:...
raise Http404
# создаем объект исполняющий роль категории
# name - это все что используется в шаблоне
category_obj = {'name': u'Новости'}
# все это считается обычными новостями
context_dict["page_prefix"] = "newspage"
Variable | Value |
---|---|
category | 'all' |
context_processors | [<function category_to_context at 0x7eff5d6f0e60>, <function bc_header_banner at 0x7eff5d6f0d70>, <function bc_main_header_banner at 0x7eff5d6f0de8>] |
maxl | 11 |
request | "<WSGIRequest\npath:/,\nGET:<QueryDict: {}>,\nPOST:<QueryDict: {}>,\nCOOKIES:{},\nMETA:{'BELCANTO_DEBUG': 'on',\n 'BELCANTO_DEV': 'on',\n 'CONTENT_LENGTH': '',\n 'CONTENT_TYPE': 'text/plain',\n u'CSRF_COOKIE': u'icvNJcIX4w44xu1aXs31n1ql3rtQ8CxW',\n 'DJANGO_SETTINGS_MODULE': 'settings',\n 'DJANGO_SPLIT_SETTINGS_MODULE': 'BEL',\n 'GATEWAY_INTERFACE': 'CGI/1.1',\n 'GPG_KEY': 'C01E1CAD5EA2C4F0B8E3571504C367C218ADD4FF',\n 'HOME': '/root',\n 'HOSTNAME': 'af47a8012a10',\n 'HTTP_ACCEPT': '*/*',\n 'HTTP_HOST': 'localhost:8000',\n 'HTTP_USER_AGENT': 'curl/7.58.0',\n 'LANG': 'C.UTF-8',\n 'PATH': '/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',\n 'PATH_INFO': u'/',\n 'PWD': '/app',\n 'PYTHONIOENCODING': 'UTF-8',\n 'PYTHONPATH': '/app',\n 'PYTHON_PIP_VERSION': '19.0.3',\n 'PYTHON_VERSION': '2.7.15',\n 'QUERY_STRING': '',\n 'REDIS_SERVICE_HOST': 'redis',\n 'REMOTE_ADDR': '172.20.0.1',\n 'REMOTE_HOST': '',\n 'REQUEST_METHOD': 'GET',\n 'RUN_MAIN': 'true',\n 'SCRIPT_NAME': u'',\n 'SERVER_NAME': 'af47a8012a10',\n 'SERVER_PORT': '8000',\n 'SERVER_PROTOCOL': 'HTTP/1.1',\n 'SERVER_SOFTWARE': 'WSGIServer/0.1 Python/2.7.15',\n 'SHLVL': '1',\n 'TZ': 'Europe/Moscow',\n '_': '/usr/local/bin/python',\n 'wsgi.errors': <open file '<stderr>', mode 'w' at 0x7eff681141e0>,\n 'wsgi.file_wrapper': <class wsgiref.util.FileWrapper at 0x7eff61a8ce88>,\n 'wsgi.input': <socket._fileobject object at 0x7eff65b14050>,\n 'wsgi.multiprocess': False,\n 'wsgi.multithread': True,\n 'wsgi.run_once': False,\n 'wsgi.url_scheme': 'http',\n 'wsgi.version': (1, 0)}>" |
context_dict | {} |
objects | Error in formatting: (1146, "Table 'belcanto.main_publication' doesn't exist") |
context | Error in formatting: (1146, "Table 'belcanto.main_publicationcategory' doesn't exist") |
year | None |
proc | [] |
page | 1 |
template | 'main.shpaml' |
/usr/local/lib/python2.7/site-packages/django/db/models/query.py
in __nonzero__
3. self.iterator()
- Responsible for turning the rows into model objects.
"""
self._fetch_all()
return iter(self._result_cache)
def __nonzero__(self):
self._fetch_all()...
return bool(self._result_cache)
def __getitem__(self, k):
"""
Retrieves an item or slice from the set of results.
"""
Variable | Value |
---|---|
self | Error in formatting: (1146, "Table 'belcanto.main_publication' doesn't exist") |
/usr/local/lib/python2.7/site-packages/django/db/models/query.py
in _fetch_all
c.__dict__.update(kwargs)
if setup and hasattr(c, '_setup_query'):
c._setup_query()
return c
def _fetch_all(self):
if self._result_cache is None:
self._result_cache = list(self.iterator())...
if self._prefetch_related_lookups and not self._prefetch_done:
self._prefetch_related_objects()
def _next_is_sticky(self):
"""
Indicates that the next filter call and the one following that should
Variable | Value |
---|---|
self | Error in formatting: (1146, "Table 'belcanto.main_publication' doesn't exist") |
/usr/local/lib/python2.7/site-packages/django/db/models/query.py
in iterator
# Cache db and model outside the loop
db = self.db
model = self.model
compiler = self.query.get_compiler(using=db)
if fill_cache:
klass_info = get_klass_info(model, max_depth=max_depth,
requested=requested, only_load=only_load)
for row in compiler.results_iter():...
if fill_cache:
obj, _ = get_cached_row(row, index_start, db, klass_info,
offset=len(aggregate_select))
else:
# Omit aggregates in object creation.
row_data = row[index_start:aggregate_start]
Variable | Value |
---|---|
requested | None |
fill_cache | False |
aggregate_select | [] |
skip | None |
self | Error in formatting: (1146, "Table 'belcanto.main_publication' doesn't exist") |
load_fields | [] |
db | 'default' |
index_start | 0 |
extra_select | [] |
fields | [<django.db.models.fields.AutoField: id>, <django.db.models.fields.CharField: mainTitle>, <django.db.models.fields.CharField: title>, <django.db.models.fields.TextField: body>, <django.db.models.fields.TextField: anons>, <django.db.models.fields.TextField: links>, <django.db.models.fields.TextField: audio_links>, <django.db.models.fields.SlugField: slug>, <django.db.models.fields.related.ForeignKey: author>, <django.db.models.fields.BooleanField: published>, <django.db.models.fields.CharField: source>, <django.db.models.fields.URLField: source_url>, <django.db.models.fields.DateTimeField: date_added>, <django.db.models.fields.BooleanField: week_pub>, <django.db.models.fields.BooleanField: round_pub>, <django.db.models.fields.BooleanField: mostread>, <django.db.models.fields.DateTimeField: date_edited>] |
aggregate_start | 17 |
model | <class 'main.models.Publication'> |
only_load | {} |
max_depth | 5 |
compiler | <django.db.backends.mysql.compiler.SQLCompiler object at 0x7eff61ba6a50> |
/usr/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py
in results_iter
def results_iter(self):
"""
Returns an iterator over the results from executing this query.
"""
resolve_columns = hasattr(self, 'resolve_columns')
fields = None
has_aggregate_select = bool(self.query.aggregate_select)
for rows in self.execute_sql(MULTI):...
for row in rows:
if has_aggregate_select:
loaded_fields = self.query.get_loaded_field_names().get(self.query.model, set()) or self.query.select
aggregate_start = len(self.query.extra_select) + len(loaded_fields)
aggregate_end = aggregate_start + len(self.query.aggregate_select)
if resolve_columns:
Variable | Value |
---|---|
fields | None |
self | <django.db.backends.mysql.compiler.SQLCompiler object at 0x7eff61ba6a50> |
has_aggregate_select | False |
resolve_columns | True |
/usr/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py
in execute_sql
if result_type == MULTI:
return iter([])
else:
return
cursor = self.connection.cursor()
try:
cursor.execute(sql, params)...
except Exception:
cursor.close()
raise
if result_type == CURSOR:
# Caller didn't specify a result_type, so just give them back the
Variable | Value |
---|---|
cursor | <django.db.backends.utils.CursorDebugWrapper object at 0x7eff5cb30b10> |
self | <django.db.backends.mysql.compiler.SQLCompiler object at 0x7eff61ba6a50> |
params | (1, 'reviews', 'articles', 'interview', True) |
result_type | 'multi' |
sql | u'SELECT `main_publication`.`id`, `main_publication`.`mainTitle`, `main_publication`.`title`, `main_publication`.`body`, `main_publication`.`anons`, `main_publication`.`links`, `main_publication`.`audio_links`, `main_publication`.`slug`, `main_publication`.`author_id`, `main_publication`.`published`, `main_publication`.`source`, `main_publication`.`source_url`, `main_publication`.`date_added`, `main_publication`.`week_pub`, `main_publication`.`round_pub`, `main_publication`.`mostread`, `main_publication`.`date_edited` FROM `main_publication` INNER JOIN `main_publication_site` ON ( `main_publication`.`id` = `main_publication_site`.`publication_id` ) INNER JOIN `main_publication_type` ON ( `main_publication`.`id` = `main_publication_type`.`publication_id` ) INNER JOIN `main_publicationtype` ON ( `main_publication_type`.`publicationtype_id` = `main_publicationtype`.`id` ) WHERE (`main_publication_site`.`site_id` = %s AND `main_publicationtype`.`slug` IN (%s, %s, %s) AND `main_publication`.`published` = %s) ORDER BY `main_publication`.`date_added` DESC' |
/usr/local/lib/python2.7/site-packages/django/db/backends/utils.py
in execute
class CursorDebugWrapper(CursorWrapper):
# XXX callproc isn't instrumented at this time.
def execute(self, sql, params=None):
start = time()
try:
return super(CursorDebugWrapper, self).execute(sql, params)...
finally:
stop = time()
duration = stop - start
sql = self.db.ops.last_executed_query(self.cursor, sql, params)
self.db.queries.append({
'sql': sql,
Variable | Value |
---|---|
self | <django.db.backends.utils.CursorDebugWrapper object at 0x7eff5cb30b10> |
stop | 1592564972.960763 |
start | 1592564972.957717 |
params | (1, 'reviews', 'articles', 'interview', True) |
sql | u"SELECT `main_publication`.`id`, `main_publication`.`mainTitle`, `main_publication`.`title`, `main_publication`.`body`, `main_publication`.`anons`, `main_publication`.`links`, `main_publication`.`audio_links`, `main_publication`.`slug`, `main_publication`.`author_id`, `main_publication`.`published`, `main_publication`.`source`, `main_publication`.`source_url`, `main_publication`.`date_added`, `main_publication`.`week_pub`, `main_publication`.`round_pub`, `main_publication`.`mostread`, `main_publication`.`date_edited` FROM `main_publication` INNER JOIN `main_publication_site` ON ( `main_publication`.`id` = `main_publication_site`.`publication_id` ) INNER JOIN `main_publication_type` ON ( `main_publication`.`id` = `main_publication_type`.`publication_id` ) INNER JOIN `main_publicationtype` ON ( `main_publication_type`.`publicationtype_id` = `main_publicationtype`.`id` ) WHERE (`main_publication_site`.`site_id` = 1 AND `main_publicationtype`.`slug` IN ('reviews', 'articles', 'interview') AND `main_publication`.`published` = 1) ORDER BY `main_publication`.`date_added` DESC" |
duration | 0.0030460357666015625 |
/usr/local/lib/python2.7/site-packages/sentry_sdk/integrations/django/__init__.py
in execute
def record_many_sql(sql, param_list):
for params in param_list:
record_sql(sql, params)
def execute(self, sql, params=None):
try:
return real_execute(self, sql, params)...
finally:
record_sql(sql, params)
def executemany(self, sql, param_list):
try:
return real_executemany(self, sql, param_list)
Variable | Value |
---|---|
real_execute | <unbound method CursorWrapper.execute> |
self | <django.db.backends.utils.CursorDebugWrapper object at 0x7eff5cb30b10> |
params | (1, 'reviews', 'articles', 'interview', True) |
sql | u'SELECT `main_publication`.`id`, `main_publication`.`mainTitle`, `main_publication`.`title`, `main_publication`.`body`, `main_publication`.`anons`, `main_publication`.`links`, `main_publication`.`audio_links`, `main_publication`.`slug`, `main_publication`.`author_id`, `main_publication`.`published`, `main_publication`.`source`, `main_publication`.`source_url`, `main_publication`.`date_added`, `main_publication`.`week_pub`, `main_publication`.`round_pub`, `main_publication`.`mostread`, `main_publication`.`date_edited` FROM `main_publication` INNER JOIN `main_publication_site` ON ( `main_publication`.`id` = `main_publication_site`.`publication_id` ) INNER JOIN `main_publication_type` ON ( `main_publication`.`id` = `main_publication_type`.`publication_id` ) INNER JOIN `main_publicationtype` ON ( `main_publication_type`.`publicationtype_id` = `main_publicationtype`.`id` ) WHERE (`main_publication_site`.`site_id` = %s AND `main_publicationtype`.`slug` IN (%s, %s, %s) AND `main_publication`.`published` = %s) ORDER BY `main_publication`.`date_added` DESC' |
/usr/local/lib/python2.7/site-packages/django/db/backends/utils.py
in execute
def execute(self, sql, params=None):
self.db.validate_no_broken_transaction()
self.db.set_dirty()
with self.db.wrap_database_errors:
if params is None:
return self.cursor.execute(sql)
else:
return self.cursor.execute(sql, params)...
def executemany(self, sql, param_list):
self.db.validate_no_broken_transaction()
self.db.set_dirty()
with self.db.wrap_database_errors:
return self.cursor.executemany(sql, param_list)
Variable | Value |
---|---|
self | <django.db.backends.utils.CursorDebugWrapper object at 0x7eff5cb30b10> |
params | (1, 'reviews', 'articles', 'interview', True) |
sql | u'SELECT `main_publication`.`id`, `main_publication`.`mainTitle`, `main_publication`.`title`, `main_publication`.`body`, `main_publication`.`anons`, `main_publication`.`links`, `main_publication`.`audio_links`, `main_publication`.`slug`, `main_publication`.`author_id`, `main_publication`.`published`, `main_publication`.`source`, `main_publication`.`source_url`, `main_publication`.`date_added`, `main_publication`.`week_pub`, `main_publication`.`round_pub`, `main_publication`.`mostread`, `main_publication`.`date_edited` FROM `main_publication` INNER JOIN `main_publication_site` ON ( `main_publication`.`id` = `main_publication_site`.`publication_id` ) INNER JOIN `main_publication_type` ON ( `main_publication`.`id` = `main_publication_type`.`publication_id` ) INNER JOIN `main_publicationtype` ON ( `main_publication_type`.`publicationtype_id` = `main_publicationtype`.`id` ) WHERE (`main_publication_site`.`site_id` = %s AND `main_publicationtype`.`slug` IN (%s, %s, %s) AND `main_publication`.`published` = %s) ORDER BY `main_publication`.`date_added` DESC' |
/usr/local/lib/python2.7/site-packages/django/db/utils.py
in __exit__
if issubclass(exc_type, db_exc_type):
dj_exc_value = dj_exc_type(*exc_value.args)
dj_exc_value.__cause__ = exc_value
# Only set the 'errors_occurred' flag for errors that may make
# the connection unusable.
if dj_exc_type not in (DataError, IntegrityError):
self.wrapper.errors_occurred = True
six.reraise(dj_exc_type, dj_exc_value, traceback)...
def __call__(self, func):
# Note that we are intentionally not using @wraps here for performance
# reasons. Refs #21109.
def inner(*args, **kwargs):
with self:
Variable | Value |
---|---|
self | <django.db.utils.DatabaseErrorWrapper object at 0x7eff5cb227d0> |
traceback | <traceback object at 0x7eff5f3ea5f0> |
exc_type | <class '_mysql_exceptions.ProgrammingError'> |
dj_exc_type | <class 'django.db.utils.ProgrammingError'> |
dj_exc_value | ProgrammingError(1146, "Table 'belcanto.main_publication' doesn't exist") |
exc_value | ProgrammingError(1146, "Table 'belcanto.main_publication' doesn't exist") |
db_exc_type | <class '_mysql_exceptions.ProgrammingError'> |
/usr/local/lib/python2.7/site-packages/django/db/backends/utils.py
in execute
def execute(self, sql, params=None):
self.db.validate_no_broken_transaction()
self.db.set_dirty()
with self.db.wrap_database_errors:
if params is None:
return self.cursor.execute(sql)
else:
return self.cursor.execute(sql, params)...
def executemany(self, sql, param_list):
self.db.validate_no_broken_transaction()
self.db.set_dirty()
with self.db.wrap_database_errors:
return self.cursor.executemany(sql, param_list)
Variable | Value |
---|---|
self | <django.db.backends.utils.CursorDebugWrapper object at 0x7eff5cb30b10> |
params | (1, 'reviews', 'articles', 'interview', True) |
sql | u'SELECT `main_publication`.`id`, `main_publication`.`mainTitle`, `main_publication`.`title`, `main_publication`.`body`, `main_publication`.`anons`, `main_publication`.`links`, `main_publication`.`audio_links`, `main_publication`.`slug`, `main_publication`.`author_id`, `main_publication`.`published`, `main_publication`.`source`, `main_publication`.`source_url`, `main_publication`.`date_added`, `main_publication`.`week_pub`, `main_publication`.`round_pub`, `main_publication`.`mostread`, `main_publication`.`date_edited` FROM `main_publication` INNER JOIN `main_publication_site` ON ( `main_publication`.`id` = `main_publication_site`.`publication_id` ) INNER JOIN `main_publication_type` ON ( `main_publication`.`id` = `main_publication_type`.`publication_id` ) INNER JOIN `main_publicationtype` ON ( `main_publication_type`.`publicationtype_id` = `main_publicationtype`.`id` ) WHERE (`main_publication_site`.`site_id` = %s AND `main_publicationtype`.`slug` IN (%s, %s, %s) AND `main_publication`.`published` = %s) ORDER BY `main_publication`.`date_added` DESC' |
/usr/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py
in execute
def __init__(self, cursor):
self.cursor = cursor
def execute(self, query, args=None):
try:
# args is None means no string interpolation
return self.cursor.execute(query, args)...
except Database.OperationalError as e:
# Map some error codes to IntegrityError, since they seem to be
# misclassified and Django would prefer the more logical place.
if e.args[0] in self.codes_for_integrityerror:
six.reraise(utils.IntegrityError, utils.IntegrityError(*tuple(e.args)), sys.exc_info()[2])
raise
Variable | Value |
---|---|
query | u'SELECT `main_publication`.`id`, `main_publication`.`mainTitle`, `main_publication`.`title`, `main_publication`.`body`, `main_publication`.`anons`, `main_publication`.`links`, `main_publication`.`audio_links`, `main_publication`.`slug`, `main_publication`.`author_id`, `main_publication`.`published`, `main_publication`.`source`, `main_publication`.`source_url`, `main_publication`.`date_added`, `main_publication`.`week_pub`, `main_publication`.`round_pub`, `main_publication`.`mostread`, `main_publication`.`date_edited` FROM `main_publication` INNER JOIN `main_publication_site` ON ( `main_publication`.`id` = `main_publication_site`.`publication_id` ) INNER JOIN `main_publication_type` ON ( `main_publication`.`id` = `main_publication_type`.`publication_id` ) INNER JOIN `main_publicationtype` ON ( `main_publication_type`.`publicationtype_id` = `main_publicationtype`.`id` ) WHERE (`main_publication_site`.`site_id` = %s AND `main_publicationtype`.`slug` IN (%s, %s, %s) AND `main_publication`.`published` = %s) ORDER BY `main_publication`.`date_added` DESC' |
self | <django.db.backends.mysql.base.CursorWrapper object at 0x7eff5cb308d0> |
args | (1, 'reviews', 'articles', 'interview', True) |
/usr/local/lib/python2.7/site-packages/MySQLdb/cursors.py
in execute
self.errorhandler(self, TypeError, m)
except (SystemExit, KeyboardInterrupt):
raise
except:
exc, value, tb = sys.exc_info()
del tb
self.messages.append((exc, value))
self.errorhandler(self, exc, value)...
self._executed = query
if not self._defer_warnings: self._warning_check()
return r
def executemany(self, query, args):
Variable | Value |
---|---|
exc | <class '_mysql_exceptions.ProgrammingError'> |
self | <MySQLdb.cursors.Cursor object at 0x7eff5cb27c90> |
args | (1, 'reviews', 'articles', 'interview', True) |
db | <weakproxy at 0x7eff5d3c4d08 to Connection at 0x7eff50012d80> |
value | ProgrammingError(1146, "Table 'belcanto.main_publication' doesn't exist") |
item | True |
r | None |
query | "SELECT `main_publication`.`id`, `main_publication`.`mainTitle`, `main_publication`.`title`, `main_publication`.`body`, `main_publication`.`anons`, `main_publication`.`links`, `main_publication`.`audio_links`, `main_publication`.`slug`, `main_publication`.`author_id`, `main_publication`.`published`, `main_publication`.`source`, `main_publication`.`source_url`, `main_publication`.`date_added`, `main_publication`.`week_pub`, `main_publication`.`round_pub`, `main_publication`.`mostread`, `main_publication`.`date_edited` FROM `main_publication` INNER JOIN `main_publication_site` ON ( `main_publication`.`id` = `main_publication_site`.`publication_id` ) INNER JOIN `main_publication_type` ON ( `main_publication`.`id` = `main_publication_type`.`publication_id` ) INNER JOIN `main_publicationtype` ON ( `main_publication_type`.`publicationtype_id` = `main_publicationtype`.`id` ) WHERE (`main_publication_site`.`site_id` = 1 AND `main_publicationtype`.`slug` IN ('reviews', 'articles', 'interview') AND `main_publication`.`published` = 1) ORDER BY `main_publication`.`date_added` DESC" |
/usr/local/lib/python2.7/site-packages/MySQLdb/connections.py
in defaulterrorhandler
error = errorclass, errorvalue
if cursor:
cursor.messages.append(error)
else:
connection.messages.append(error)
del cursor
del connection
raise errorclass, errorvalue...
re_numeric_part = re.compile(r"^(\d+)")
def numeric_part(s):
"""Returns the leading numeric part of a string.
Variable | Value |
---|---|
errorclass | <class '_mysql_exceptions.ProgrammingError'> |
error | (<class '_mysql_exceptions.ProgrammingError'>, ProgrammingError(1146, "Table 'belcanto.main_publication' doesn't exist")) |
errorvalue | ProgrammingError(1146, "Table 'belcanto.main_publication' doesn't exist") |
No GET data
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
RUN_MAIN | 'true' |
SERVER_SOFTWARE | 'WSGIServer/0.1 Python/2.7.15' |
SCRIPT_NAME | u'' |
REQUEST_METHOD | 'GET' |
SERVER_PROTOCOL | 'HTTP/1.1' |
HOME | '/root' |
LANG | 'C.UTF-8' |
PYTHON_VERSION | '2.7.15' |
PYTHON_PIP_VERSION | '19.0.3' |
SERVER_PORT | '8000' |
PYTHONPATH | '/app' |
HTTP_HOST | 'localhost:8000' |
HTTP_ACCEPT | '*/*' |
wsgi.version | (1, 0) |
wsgi.run_once | False |
wsgi.errors | <open file '<stderr>', mode 'w' at 0x7eff681141e0> |
HOSTNAME | 'af47a8012a10' |
REDIS_SERVICE_HOST | 'redis' |
DJANGO_SPLIT_SETTINGS_MODULE | 'BEL' |
PYTHONIOENCODING | 'UTF-8' |
wsgi.multiprocess | False |
BELCANTO_DEV | 'on' |
PATH_INFO | u'/' |
QUERY_STRING | '' |
PATH | '/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' |
BELCANTO_DEBUG | 'on' |
HTTP_USER_AGENT | 'curl/7.58.0' |
TZ | 'Europe/Moscow' |
SERVER_NAME | 'af47a8012a10' |
REMOTE_ADDR | '172.20.0.1' |
SHLVL | '1' |
wsgi.url_scheme | 'http' |
CONTENT_LENGTH | '' |
GPG_KEY | 'C01E1CAD5EA2C4F0B8E3571504C367C218ADD4FF' |
wsgi.input | <socket._fileobject object at 0x7eff65b14050> |
wsgi.multithread | True |
_ | '/usr/local/bin/python' |
GATEWAY_INTERFACE | 'CGI/1.1' |
CSRF_COOKIE | u'icvNJcIX4w44xu1aXs31n1ql3rtQ8CxW' |
PWD | '/app' |
DJANGO_SETTINGS_MODULE | 'settings' |
CONTENT_TYPE | 'text/plain' |
wsgi.file_wrapper | '' |
REMOTE_HOST | '' |
settings
Setting | Value |
---|---|
PIPELINE_JS_COMPRESSOR | 'pipeline.compressors.yuglify.YuglifyCompressor' |
FILEBROWSER_VERSIONS | {'admin_thumbnail': {'height': 60, 'opts': 'crop', 'verbose_name': 'Admin Thumbnail', 'width': 60}, 'big': {'height': '', 'opts': '', 'verbose_name': 'Big (6 col)', 'width': 460}, 'big_spec_project': {'height': 320, 'opts': 'crop', 'verbose_name': u'\u0411\u043e\u043b\u044c\u0448\u0430\u044f \u0434\u043b\u044f \u0441\u043f\u0435\u0446\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432', 'width': 660}, 'large': {'height': '', 'opts': '', 'verbose_name': 'Large (8 col)', 'width': 680}, 'medium': {'height': '', 'opts': '', 'verbose_name': 'Medium (4col )', 'width': 300}, 'page_spec_project': {'height': 208, 'opts': 'crop', 'verbose_name': u'\u0414\u043b\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0441\u043f\u0435\u0446\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432', 'width': 430}, 'small': {'height': '', 'opts': '', 'verbose_name': 'Small (2 col)', 'width': 140}, 'small_spec_project': {'height': 165, 'opts': 'crop', 'verbose_name': u'\u041c\u0430\u043b\u0435\u043d\u044c\u043a\u0430\u044f \u0434\u043b\u044f \u0441\u043f\u0435\u0446\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432', 'width': 165}, 'thumbnail': {'height': 60, 'opts': 'crop', 'verbose_name': 'Thumbnail (1 col)', 'width': 60}} |
USE_L10N | False |
USE_THOUSAND_SEPARATOR | False |
CSRF_COOKIE_SECURE | False |
LANGUAGE_CODE | 'ru-ru' |
ROOT_URLCONF | 'urls_belcanto' |
MANAGERS | (('Aspanoz', 'aspanoz@gmail.com'), ('Nikita Kabardin', 'nikita@kabardin.com')) |
TEMPLATE_LOADERS | (('shpaml.Loader', ('django.template.loaders.filesystem.Loader',)), 'django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader') |
TEST_NON_SERIALIZED_APPS | [] |
DEFAULT_CHARSET | 'utf-8' |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.JSONSerializer' |
STATIC_ROOT | '/app/static' |
FEED_TITLE | u'Belcanto.ru' |
TIME_INPUT_FORMATS | ('%H:%M:%S', '%H:%M:%S.%f', '%H:%M') |
ALLOWED_HOSTS | [u'.operanews.ru', u'.belcanto.ru', u'.classic-music.ru', u'.operanews.local', u'.belcanto.local', u'.classic-music.local', u'.operanews-new.ru', u'.belcanto-new.ru', u'.classic-music-new.ru', u'.admin.belcanto-new.ru', u'.admin.belcanto.ru', u'.belcanto-admin.local'] |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
EMAIL_SUBJECT_PREFIX | '[Django] ' |
SEND_BROKEN_LINK_EMAILS | False |
STATICFILES_FINDERS | ('django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder', 'pipeline.finders.PipelineFinder') |
FILEBROWSER_DIRECTORY | 'images/' |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_DOMAIN | None |
SESSION_COOKIE_NAME | 'sessionid' |
ADMIN_FOR | () |
SESSION_SAVE_EVERY_REQUEST | False |
DATABASES | {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.mysql', 'HOST': 'db', 'NAME': 'belcanto', 'OPTIONS': {'init_command': 'SET foreign_key_checks = 0;'}, 'PASSWORD': u'********************', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': 'Europe/Moscow', 'USER': 'root'}} |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | ('django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler') |
PIPELINE_JS | {'belcanto': {'output_filename': 'js/belcanto.js', 'source_filenames': ('js/scripts.js', 'js/to_alphabet.js')}} |
DEFAULT_CONTENT_TYPE | 'text/html' |
APPEND_SLASH | True |
LOCALE_PATHS | () |
DATABASE_ROUTERS | [] |
DEFAULT_TABLESPACE | '' |
YEAR_MONTH_FORMAT | 'F Y' |
STATICFILES_STORAGE | 'storage.PipelineManifestStorage' |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}} |
SERVER_EMAIL | 'root@localhost' |
SESSION_COOKIE_PATH | '/' |
SILENCED_SYSTEM_CHECKS | [] |
MIDDLEWARE_CLASSES | ('django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware') |
USE_I18N | True |
THOUSAND_SEPARATOR | ',' |
SECRET_KEY | u'********************' |
LANGUAGE_COOKIE_NAME | 'django_language' |
DEFAULT_INDEX_TABLESPACE | '' |
TRANSACTIONS_MANAGED | False |
LOGGING_CONFIG | 'logging.config.dictConfig' |
FEED_DESCRIPTION | u'\u0412\u0441\u0435 \u043e \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043c\u0443\u0437\u044b\u043a\u0435, \u043e\u043f\u0435\u0440\u0435 \u0438 \u0431\u0430\u043b\u0435\u0442\u0435' |
FIRST_DAY_OF_WEEK | 0 |
WSGI_APPLICATION | None |
TEMPLATE_DEBUG | True |
X_FRAME_OPTIONS | 'SAMEORIGIN' |
AUTHENTICATION_BACKENDS | ('django.contrib.auth.backends.ModelBackend',) |
ROOT | '/app' |
FORCE_SCRIPT_NAME | None |
USE_X_FORWARDED_HOST | False |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SESSION_COOKIE_SECURE | False |
REDIS_HOST | 'redis' |
CSRF_COOKIE_DOMAIN | None |
FILE_CHARSET | 'utf-8' |
DEBUG | True |
LANGUAGE_COOKIE_DOMAIN | None |
DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
INSTALLED_APPS | ('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sites', 'main', 'grappelli', 'filebrowser', 'django.contrib.admin', 'pipeline', 'encyclopedia', 'special_projects') |
LANGUAGES | (('af', 'Afrikaans'), ('ar', 'Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 'Welsh'), ('da', 'Danish'), ('de', 'German'), ('el', 'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 'Argentinian Spanish'), ('es-mx', 'Mexican Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve', 'Venezuelan Spanish'), ('et', 'Estonian'), ('eu', 'Basque'), ('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('fy', 'Frisian'), ('ga', 'Irish'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hu', 'Hungarian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('lb', 'Luxembourgish'), ('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk', 'Macedonian'), ('ml', 'Malayalam'), ('mn', 'Mongolian'), ('mr', 'Marathi'), ('my', 'Burmese'), ('nb', 'Norwegian Bokmal'), ('ne', 'Nepali'), ('nl', 'Dutch'), ('nn', 'Norwegian Nynorsk'), ('os', 'Ossetic'), ('pa', 'Punjabi'), ('pl', 'Polish'), ('pt', 'Portuguese'), ('pt-br', 'Brazilian Portuguese'), ('ro', 'Romanian'), ('ru', 'Russian'), ('sk', 'Slovak'), ('sl', 'Slovenian'), ('sq', 'Albanian'), ('sr', 'Serbian'), ('sr-latn', 'Serbian Latin'), ('sv', 'Swedish'), ('sw', 'Swahili'), ('ta', 'Tamil'), ('te', 'Telugu'), ('th', 'Thai'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('vi', 'Vietnamese'), ('zh-cn', 'Simplified Chinese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese'), ('zh-tw', 'Traditional Chinese')) |
COMMENTS_ALLOW_PROFANITIES | False |
STATICFILES_DIRS | () |
PREPEND_WWW | False |
SECURE_PROXY_SSL_HEADER | None |
PASSWORD_RESET_TIMEOUT_DAYS | u'********************' |
LANGUAGE_COOKIE_AGE | None |
SESSION_COOKIE_HTTPONLY | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
INTERNAL_IPS | () |
MONTH_DAY_FORMAT | 'F j' |
LOGIN_URL | '/accounts/login/' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | False |
PIPELINE_COMPILERS | ('pipeline.compilers.less.LessCompiler',) |
TIME_FORMAT | 'P' |
AUTH_USER_MODEL | 'auth.User' |
DATE_INPUT_FORMATS | ('%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y') |
CSRF_COOKIE_NAME | 'csrftoken' |
EMAIL_HOST_PASSWORD | u'********************' |
GRAPPELLI_ADMIN_TITLE | 'belcanto.ru' |
SESSION_FILE_PATH | None |
CACHE_MIDDLEWARE_ALIAS | 'default' |
BANNERS_ROOT | '/app/banners' |
NUMBER_GROUPING | 0 |
INCLUDES_ROOT | '/app/includes' |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_COOKIE_PATH | '/' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
DECIMAL_SEPARATOR | '.' |
IGNORABLE_404_URLS | () |
MIGRATION_MODULES | {} |
PIPELINE_CSS_COMPRESSOR | 'pipeline.compressors.yuglify.YuglifyCompressor' |
TEMPLATE_STRING_IF_INVALID | '' |
LOGOUT_URL | '/accounts/logout/' |
EMAIL_USE_TLS | True |
FIXTURE_DIRS | () |
EMAIL_HOST | 'smtp.gmail.com' |
DATE_FORMAT | 'N j, Y' |
MEDIA_ROOT | '/app/media' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
ADMINS | (('Aspanoz', 'aspanoz@gmail.com'), ('Nikita Kabardin', 'nikita@kabardin.com')) |
FORMAT_MODULE_PATH | None |
DEFAULT_FROM_EMAIL | 'webmaster@localhost' |
MEDIA_URL | '/media/' |
DATETIME_FORMAT | 'N j, Y, P' |
TEMPLATE_DIRS | ('/app/templates/belcanto',) |
PIPELINE_CSS | {'bk': {'extra_context': {'media': 'screen,projection'}, 'output_filename': 'css/bk.css', 'source_filenames': ('belcanto_less/bk.less',)}} |
SITE_ID | 1 |
DISALLOWED_USER_AGENTS | () |
ALLOWED_INCLUDE_ROOTS | () |
LOGGING | {'disable_existing_loggers': False, 'filters': {'require_debug_false': {'()': 'django.utils.log.RequireDebugFalse'}, 'require_debug_true': {'()': 'django.utils.log.RequireDebugTrue'}}, 'formatters': {'simple': {'format': '%(asctime)s %(message)s'}, 'verbose': {'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'}}, 'handlers': {'file': {'class': 'logging.FileHandler', 'filename': '/var/log/belcanto.query.log', 'filters': ['require_debug_true'], 'formatter': 'simple', 'level': 'DEBUG'}, 'mail_admins': {'class': 'django.utils.log.AdminEmailHandler', 'filters': ['require_debug_false'], 'level': 'ERROR'}}, 'loggers': {'django.db.backends': {'handlers': ['file'], 'level': 'DEBUG', 'propagate': False}, 'django.request': {'handlers': ['mail_admins'], 'level': 'ERROR', 'propagate': True}, 'main': {'handlers': ['mail_admins'], 'level': 'ERROR', 'propagate': True}}, 'version': 1} |
SHORT_DATE_FORMAT | 'm/d/Y' |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
FEED_LINK | u'http://belcanto.ru/' |
CACHE_MIDDLEWARE_KEY_PREFIX | u'********************' |
TIME_ZONE | 'Europe/Moscow' |
FILE_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_USE_SSL | False |
TEMPLATE_CONTEXT_PROCESSORS | ('django.contrib.auth.context_processors.auth', 'django.core.context_processors.debug', 'django.core.context_processors.i18n', 'django.core.context_processors.media', 'django.core.context_processors.static', 'django.core.context_processors.tz', 'django.contrib.messages.context_processors.messages', 'main.context_processors.includes') |
SESSION_COOKIE_AGE | 1209600 |
SETTINGS_MODULE | 'settings' |
USE_ETAGS | False |
LANGUAGES_BIDI | ('he', 'ar', 'fa', 'ur') |
FILE_UPLOAD_TEMP_DIR | None |
CSRF_COOKIE_AGE | 31449600 |
STATIC_URL | '/static/' |
EMAIL_PORT | 587 |
SESSION_ENGINE | 'django.contrib.sessions.backends.db' |
USE_TZ | False |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
PASSWORD_HASHERS | u'********************' |
ABSOLUTE_URL_OVERRIDES | {} |
LANGUAGE_COOKIE_PATH | '/' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CSRF_COOKIE_HTTPONLY | False |
DATETIME_INPUT_FORMATS | ('%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') |
EMAIL_HOST_USER | 'dvtrk.khabarovsk@gmail.com' |
PROFANITIES_LIST | u'********************' |
You're seeing this error because you have DEBUG = True
in your
Django settings file. Change that to False
, and Django will
display a standard 500 page.