The 'pac_inicial' attribute has no file associated with it.
Request Method: | GET |
---|---|
Request URL: | http://sanantoniodelpeludo.gob.ec/pac/2015/ |
Django Version: | 3.2.12 |
Exception Type: | ValueError |
Exception Value: | The 'pac_inicial' attribute has no file associated with it. |
Exception Location: | /var/www/gadwebs/.venv/lib/python3.8/site-packages/django/db/models/fields/files.py, line 40, in _require_file |
Python Executable: | /var/www/gadwebs/.venv/bin/python |
Python Version: | 3.8.10 |
Python Path: | ['/var/www/gadwebs', '/usr/lib/python38.zip', '/usr/lib/python3.8', '/usr/lib/python3.8/lib-dynload', '/var/www/gadwebs/.venv/lib/python3.8/site-packages'] |
Server time: | Fri, 29 Mar 2024 08:13:07 -0500 |
In template /var/www/gadwebs/templates/webpage/base.html
, error at line 0
1 | {% load static %} |
---|---|
2 | {% load site_tags %} |
3 | {% load menu_tags %} |
4 | {% getlastyear as last_year %} |
5 | {% getcurrentyear as current_year %} |
6 | <!DOCTYPE html> |
7 | <html lang="en"> |
8 | <head> |
9 | <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> |
10 | {% block tags_social %} |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 829, in _resolve_lookup
detail and shouldn't be called by external code. Use Variable.resolve()
instead.
"""
current = context
try: # catch-all for silent variable failures
for bit in self.lookups:
try: # dictionary lookup
current = current[bit]…
# ValueError/IndexError are for numpy.array lookup on
# numpy < 1.9 and 1.9+ respectively
except (TypeError, AttributeError, KeyError, ValueError, IndexError):
try: # attribute lookup
# Don't return class attributes if the class is the context:
if isinstance(current, BaseContext) and getattr(type(current), bit):
Variable | Value |
---|---|
bit | 'url' |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
current | <FieldFile: None> |
self | <Variable: 'doc_inicial.pac_inicial.url'> |
template_name | 'webpage/pac.html' |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/core/handlers/exception.py
, line 47, in inner
response = await sync_to_async(response_for_exception, thread_sensitive=False)(request, exc)
return response
return inner
else:
@wraps(get_response)
def inner(request):
try:
response = get_response(request)…
except Exception as exc:
response = response_for_exception(request, exc)
return response
return inner
Variable | Value |
---|---|
exc | ValueError("The 'pac_inicial' attribute has no file associated with it.") |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7fccc48dce50>> |
request | <WSGIRequest: GET '/pac/2015/'> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/core/handlers/base.py
, line 181, in _get_response
if response is None:
wrapped_callback = self.make_view_atomic(callback)
# If it is an asynchronous view, run it in a subthread.
if asyncio.iscoroutinefunction(wrapped_callback):
wrapped_callback = async_to_sync(wrapped_callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)…
except Exception as e:
response = self.process_exception_by_middleware(e, request)
if response is None:
raise
# Complain if the view returned None (a common error).
Variable | Value |
---|---|
callback | <function pag_pac at 0x7fccc4437d30> |
callback_args | () |
callback_kwargs | {'year': 2015} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7fccc46fb3d0>> |
request | <WSGIRequest: GET '/pac/2015/'> |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7fccc48dce50> |
wrapped_callback | <function pag_pac at 0x7fccc4437d30> |
/var/www/gadwebs/pkg_webpage/views.py
, line 532, in pag_pac
month_in_year=month_in_year))
else:
obj_presupuesto = ConvocatoriasSesionesActasPage.objects.filter(year=year)
#g_i_information = obj_presupuesto.filter(year=year)
doc_inicial = obj_presupuesto.filter(year=year, month=1)[0] if obj_presupuesto.filter(year=year, month=1) else []
unique_year = set(list(map(lambda x: x.year, ConvocatoriasSesionesActasPage.objects.all())))
unique_month = set(list(map(lambda x: x.month, obj_presupuesto)))
return render(request, 'webpage/pac.html',…
dict(doc_inicial=doc_inicial, pac_information=obj_presupuesto, year=year,
unique_month=unique_month, unique_year=unique_year))
def pag_pdot(request, id):
if id == 0 :
Variable | Value |
---|---|
doc_inicial | <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]> |
obj_presupuesto | <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]> |
request | <WSGIRequest: GET '/pac/2015/'> |
unique_month | {1} |
unique_year | {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015} |
year | 2015 |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/shortcuts.py
, line 19, in render
def render(request, template_name, context=None, content_type=None, status=None, using=None):
"""
Return a HttpResponse whose content is filled with the result of calling
django.template.loader.render_to_string() with the passed arguments.
"""
content = loader.render_to_string(template_name, context, request, using=using)…
return HttpResponse(content, content_type, status)
def redirect(to, *args, permanent=False, **kwargs):
"""
Return an HttpResponseRedirect to the appropriate URL for the arguments
Variable | Value |
---|---|
content_type | None |
context | {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'year': 2015} |
request | <WSGIRequest: GET '/pac/2015/'> |
status | None |
template_name | 'webpage/pac.html' |
using | None |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/loader.py
, line 62, in render_to_string
template_name may be a string or a list of strings.
"""
if isinstance(template_name, (list, tuple)):
template = select_template(template_name, using=using)
else:
template = get_template(template_name, using=using)
return template.render(context, request)…
def _engine_list(using=None):
return engines.all() if using is None else [engines[using]]
Variable | Value |
---|---|
context | {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'year': 2015} |
request | <WSGIRequest: GET '/pac/2015/'> |
template | <django.template.backends.django.Template object at 0x7fccbe04a1c0> |
template_name | 'webpage/pac.html' |
using | None |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/backends/django.py
, line 61, in render
@property
def origin(self):
return self.template.origin
def render(self, context=None, request=None):
context = make_context(context, request, autoescape=self.backend.engine.autoescape)
try:
return self.template.render(context)…
except TemplateDoesNotExist as exc:
reraise(exc, self.backend)
def copy_exception(exc, backend=None):
"""
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
request | <WSGIRequest: GET '/pac/2015/'> |
self | <django.template.backends.django.Template object at 0x7fccbe04a1c0> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 170, in render
def render(self, context):
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
context.template_name = self.name
return self._render(context)…
else:
return self._render(context)
def compile_nodelist(self):
"""
Parse and compile the template source into a nodelist. If debug
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
self | <django.template.base.Template object at 0x7fccbd9e3970> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 162, in _render
self.nodelist = self.compile_nodelist()
def __iter__(self):
for node in self.nodelist:
yield from node
def _render(self, context):
return self.nodelist.render(context)…
def render(self, context):
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
self | <django.template.base.Template object at 0x7fccbd9e3970> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 938, in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = node.render_annotated(context)…
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bits | [] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
node | <ExtendsNode: extends 'webpage/base.html'> |
self | [<ExtendsNode: extends 'webpage/base.html'>] |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 905, in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)…
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
self | <ExtendsNode: extends 'webpage/base.html'> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/loader_tags.py
, line 150, in render
compiled_parent.nodelist.get_nodes_by_type(BlockNode)}
block_context.add_blocks(blocks)
break
# Call Template._render explicitly so the parser context stays
# the same.
with context.render_context.push_state(compiled_parent, isolated_context=False):
return compiled_parent._render(context)…
class IncludeNode(Node):
context_key = '__include_context'
def __init__(self, template, *args, extra_context=None, isolated_context=False, **kwargs):
Variable | Value |
---|---|
block_context | <django.template.loader_tags.BlockContext object at 0x7fccbd661670> |
blocks | {'content': <Block Node: content. Contents: [<TextNode: '\n '>]>, 'css': <Block Node: css. Contents: [<TextNode: '\n '>]>, 'js': <Block Node: js. Contents: [<TextNode: '\n '>]>, 'jsinit': <Block Node: jsinit. Contents: [<TextNode: '\n '>]>, 'tags_social': <Block Node: tags_social. Contents: [<TextNode: '\n '>]>, 'title': <Block Node: title. Contents: []>} |
compiled_parent | <django.template.base.Template object at 0x7fccbd644100> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
node | <django.template.defaulttags.LoadNode object at 0x7fccbd7f0790> |
self | <ExtendsNode: extends 'webpage/base.html'> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 162, in _render
self.nodelist = self.compile_nodelist()
def __iter__(self):
for node in self.nodelist:
yield from node
def _render(self, context):
return self.nodelist.render(context)…
def render(self, context):
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
self | <django.template.base.Template object at 0x7fccbd644100> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 938, in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = node.render_annotated(context)…
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | ('\n' ' <!--end: Navigation-->\n' ' </div>\n' ' </div>\n' ' </header>\n' ' <!-- end: Header -->\n' '\n' ' ') |
bits | ['', '\n', '', '\n', '', '\n', '', '\n', '', '\n' '<!DOCTYPE html>\n' '<html lang="en">\n' '<head>\n' ' <meta name="viewport" content="width=device-width, initial-scale=1, ' 'shrink-to-fit=no">\n' ' ', '\n ', '\n <meta name="description" content="', '-', '">\n <meta name="keywords" content="', '-', '">\n' ' <meta name="author" content="Tecnoserviweb">\n' '\n' ' <meta http-equiv="content-type" content="text/html; charset=utf-8" />\n' '\n' ' ', '<link rel="icon" type="image/png" ' 'href="/media/sanantoniodelpeludo/logo_gads_images/LOGOsap.jpg">', '\n' ' <meta http-equiv="X-UA-Compatible" content="IE=edge">\n' ' <!-- Document title -->\n' ' <title>GAD | ', 'SAntonio', ' | ', '', '</title>\n <!-- Stylesheets & Fonts -->\n <link href="', '/static/css/plugins.css', '" rel="stylesheet">\n <link href="', '/static/css/style.css', '" rel="stylesheet">\n <link href="', '/static/css/custom/base.css', '" rel="stylesheet">\n' ' <style>\n' ' .mega-menu-title.gad-menu-title {\n' ' border-bottom: 2px solid ', '#49784E', ';\n' ' }\n' '\n' ' .heading-text.heading-section h2:before{\n' ' background-color: ', '#49784E', ';\n' ' }\n' '\n' ' .alert{\n' ' z-index: 99;\n' ' }\n' '\n' ' #mainMenu nav > ul > li .dropdown-menu > li [class*="col-"] > ul > ' 'li > a:hover{\n' ' color: ', '#49784E', ' !important;\n' ' background-color: transparent !important;\n' ' font-weigth : 300px;\n' ' }\n' '\n' ' #mainMenu nav > ul > li .dropdown-menu > li > a:hover{\n' ' color: ', '#49784E', ' !important;\n' ' }\n' '\n' ' #mainMenu nav > ul > li:hover > a{\n' ' color: ', '#49784E', ' !important;\n' ' }\n' '\n' ' .icon-set-container .row > [class^="col-"]:hover{\n' ' background: ', '#49784E', ' !important;\n' ' }\n' '\n' ' .icon-set-container .row > [class^="col-"]:hover .icon-holder{\n' ' color: ', '#49784E', ' !important;\n' ' }\n' '\n' ' button.btn, .btn:not(.close):not(.mfp-close), ' 'a.btn:not([href]):not([tabindex]){\n' ' background: ', '#49784E', ' !important;\n border-color: ', '#49784E', ' !important;\n' ' }\n' '\n' ' #header[data-transparent="true"] + #page-title{\n' ' padding: 220px 0 40px 0 !important;\n' ' }\n' ' </style>\n' '\n' ' ', '\n ', '\n ', '\n ', '\n' '</head>\n' '\n' '<body>\n' ' <!-- Body Inner -->\n' ' <div class="body-inner">\n' ' <!-- Topbar -->\n' ' <div id="topbar" class="topbar-transparent topbar-fullwidth d-none ' 'd-xl-block d-lg-block ', '', '">\n' ' <div class="container">\n' ' <div class="row">\n' ' <div class="col-md-5">\n' ' <ul class="top-menu">\n' ' ', '', '\n ', '<li><a href="#">Email: info@sanantoniodelpeludo.gob.ec</a></li>', '\n' ' </ul>\n' ' </div>\n' ' <div class="col-md-5 d-none d-sm-block">\n' ' <div class="social-icons ' 'social-icons-colored-hover">\n' ' <ul>\n' ' ', '<li class="social-facebook"><a ' 'href="https://www.facebook.com/profile.php?id=100064454451563"><i class="fab ' 'fa-facebook-f"></i></a></li>', '\n ', '', '\n ', '', '\n ', '', '\n <!--', '', '-->\n' ' </ul>\n' ' </div>\n' ' </div>\n' ' <div class="col-md-2 d-none d-sm-block m-t-10 ' 'text-right">\n' ' <a href="', '/contacto.html', '" class… <trimmed 26264 bytes string> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
node | <Block Node: content. Contents: [<TextNode: '\n '>]> |
self | [<django.template.defaulttags.LoadNode object at 0x7fccbd7f0790>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fccbd658040>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fccbd658d30>, <TextNode: '\n'>, <django.template.library.SimpleNode object at 0x7fccbd658eb0>, <TextNode: '\n'>, <django.template.library.SimpleNode object at 0x7fccbd658e50>, <TextNode: '\n<!DOCTYPE html>\n<html la'>, <Block Node: tags_social. Contents: [<TextNode: '\n '>]>, <TextNode: '\n <meta name="descript'>, <Variable Node: config.description>, <TextNode: '">\n <meta name="keywor'>, <Variable Node: config.keywords>, <TextNode: '">\n <meta name="author'>, <IfNode>, <TextNode: '\n <meta http-equiv="X-'>, <Variable Node: config.name>, <TextNode: ' | '>, <Block Node: title. Contents: []>, <TextNode: '</title>\n <!-- Stylesh'>, <django.templatetags.static.StaticNode object at 0x7fccbd658a60>, <TextNode: '" rel="stylesheet">\n <'>, <django.templatetags.static.StaticNode object at 0x7fccbd658250>, <TextNode: '" rel="stylesheet">\n <'>, <django.templatetags.static.StaticNode object at 0x7fccbe0af8b0>, <TextNode: '" rel="stylesheet">\n <'>, <Variable Node: config.primarycolor>, <TextNode: ';\n }\n\n .hea'>, <Variable Node: config.primarycolor>, <TextNode: ';\n }\n\n .ale'>, <Variable Node: config.primarycolor>, <TextNode: ' !important;\n '>, <Variable Node: config.primarycolor>, <TextNode: ' !important;\n }\n\n '>, <Variable Node: config.primarycolor>, <TextNode: ' !important;\n }\n\n '>, <Variable Node: config.primarycolor>, <TextNode: ' !important;\n }\n\n '>, <Variable Node: config.primarycolor>, <TextNode: ' !important;\n }\n\n '>, <Variable Node: config.primarycolor>, <TextNode: ' !important;\n '>, <Variable Node: config.primarycolor>, <TextNode: ' !important;\n }\n\n '>, <Block Node: css. Contents: [<TextNode: '\n '>]>, <TextNode: '\n '>, <Block Node: jsinit. Contents: [<TextNode: '\n '>]>, <TextNode: '\n</head>\n\n<body>\n <!--'>, <IfNode>, <TextNode: '">\n <div class'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '-->\n '>, <django.template.defaulttags.URLNode object at 0x7fccbd646370>, <TextNode: '" class="btn btn-success '>, <IfNode>, <TextNode: ' submenu-light">\n '>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n\n </d'>, <django.template.library.InclusionNode object at 0x7fccbd69a3a0>, <TextNode: '\n <!--'>, <Block Node: content. Contents: [<TextNode: '\n '>]>, <TextNode: '\n\n <!--MENÚ FOOTER'>, <django.template.library.InclusionNode object at 0x7fccbd69aaf0>, <TextNode: '\n <div class="'>, <IfNode>, <TextNode: '\n '>, <Variable Node: config.description_footer>, <TextNode: '</p>\n '>, <Variable Node: pdot_footer>, <TextNode: '\n '>, <django.template.defaulttags.URLNode object at 0x7fccbd633850>, <TextNode: '"><i class="fas fa-user-t'>, <Variable Node: pdot_footer.id>, <TextNode: '"><i class="fas fa-cogs">'>, <django.template.defaulttags.URLNode object at 0x7fccbd633e20>, <TextNode: '"><i class="icon-bell"></'>, <django.template.defaulttags.URLNode object at 0x7fccbd633d60>, <TextNode: '"><i class="icon-bookmark'>, <django.template.defaulttags.URLNode object at 0x7fccbd633460>, <TextNode: '"><i class="icon-headphon'>, <django.template.defaulttags.URLNode object at 0x7fccbd6334c0>, <TextNode: '"><i class="icon-file-tex'>, <django.template.defaulttags.URLNode object at 0x7fccbd68edc0>, <TextNode: '"><i cl… <trimmed 6448 bytes string> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 905, in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)…
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
self | <Block Node: content. Contents: [<TextNode: '\n '>]> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/loader_tags.py
, line 62, in render
push = block = block_context.pop(self.name)
if block is None:
block = self
# Create new block so we can store context without thread-safety issues.
block = type(self)(block.name, block.nodelist)
block.context = context
context['block'] = block
result = block.nodelist.render(context)…
if push is not None:
block_context.push(self.name, push)
return result
def super(self):
if not hasattr(self, 'context'):
Variable | Value |
---|---|
block | <Block Node: content. Contents: [<TextNode: '\n <!-- Content -->\n<!-- P'>, <IfNode>, <TextNode: '\n </h1>\n '>, <IfNode>, <TextNode: '\n<!-- end: Content -->\n'>]> |
block_context | <django.template.loader_tags.BlockContext object at 0x7fccbd661670> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
push | <Block Node: content. Contents: [<TextNode: '\n <!-- Content -->\n<!-- P'>, <IfNode>, <TextNode: '\n </h1>\n '>, <IfNode>, <TextNode: '\n<!-- end: Content -->\n'>]> |
self | <Block Node: content. Contents: [<TextNode: '\n '>]> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 938, in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = node.render_annotated(context)…
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | ('\n' ' </h1>\n' ' </div>\n' ' <div class="breadcrumb">\n' ' <ul>\n' ' <li><a href="/">Home</a> </li>\n' ' <li class="active">PAC</li>\n' ' </ul>\n' ' </div>\n' ' </div>\n' ' </section>\n' ' <!-- end: Page title -->\n') |
bits | ['\n' ' <!-- Content -->\n' '<!-- Page title -->\n' ' <section id="page-title">\n' ' <div class="container">\n' ' <div class="page-title">\n' ' <h1>PAC\n' ' ', '\n' ' <select id="select_time" aria-invalid="false" >\n' ' \n' ' <option value="2017" id="2017">2017</option>\n' ' \n' ' <option value="2018" id="2018">2018</option>\n' ' \n' ' <option value="2019" id="2019">2019</option>\n' ' \n' ' <option value="2020" id="2020">2020</option>\n' ' \n' ' <option value="2021" id="2021">2021</option>\n' ' \n' ' <option value="2022" id="2022">2022</option>\n' ' \n' ' <option value="2023" id="2023">2023</option>\n' ' \n' ' <option value="2012" id="2012">2012</option>\n' ' \n' ' <option value="2014" id="2014">2014</option>\n' ' \n' ' <option value="2015" id="2015">2015</option>\n' ' \n' ' </select>\n' ' ', '\n' ' </h1>\n' ' </div>\n' ' <div class="breadcrumb">\n' ' <ul>\n' ' <li><a href="/">Home</a> </li>\n' ' <li class="active">PAC</li>\n' ' </ul>\n' ' </div>\n' ' </div>\n' ' </section>\n' ' <!-- end: Page title -->\n'] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
node | <IfNode> |
self | [<TextNode: '\n <!-- Content -->\n<!-- P'>, <IfNode>, <TextNode: '\n </h1>\n '>, <IfNode>, <TextNode: '\n<!-- end: Content -->\n'>] |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 905, in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)…
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
self | <IfNode> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/defaulttags.py
, line 315, in render
match = condition.eval(context)
except VariableDoesNotExist:
match = None
else: # else clause
match = True
if match:
return nodelist.render(context)…
return ''
class LoremNode(Node):
def __init__(self, count, method, common):
Variable | Value |
---|---|
condition | None |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
match | True |
nodelist | [<TextNode: '\n <section id="page-co'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n\n '>, <ForNode: for obj in pac_information, tail_len: 3>, <TextNode: '\n '>] |
self | <IfNode> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 938, in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = node.render_annotated(context)…
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | ('\n' ' </div>\n' ' <div class="row m-t-30">\n' ' <div class="col-lg-12">\n' ' <div class="heading-text heading-line ' 'text-center">\n' ' <h4>REFORMAS REALIZADAS AL PLAN ' 'ANUAL DE CONTRATACION</h4>\n' ' </div>\n' ' </div>\n' '\n' ' ') |
bits | ['\n' ' <section id="page-content">\n' ' <div class="container">\n' ' <div class="grid-system-demo-live">\n' ' <div class="row">\n' ' <div class="col-lg-12">\n' ' <div class="row">\n' ' <div class="col-lg-5">\n' ' <p>Dando cumplimiento a la LEY ORGANICA DEL ' 'SISTEMA NACIONAL DE CONTRATACION PUBLICA <strong> Art. 22.- Plan Anual de ' 'Contratación. - </strong>Las Entidades Contratantes, para cumplir con los ' 'objetivos del Plan Nacional de Desarrollo, sus objetivos y necesidades ' 'institucionales, formularán el Plan Anual de Contratación con el presupuesto ' 'correspondiente, de conformidad a la planificación plurianual de la ' 'Institución, asociados al Plan Nacional de Desarrollo y a los presupuestos ' 'del Estado. El Plan será publicado obligatoriamente en la página Web de la ' 'Entidad Contratante dentro de los quince (15) días del mes de enero de cada ' 'año e interoperará con el portal COMPRASPUBLICAS. De existir reformas al ' 'Plan Anual de Contratación, éstas serán publicadas siguiendo los mismos ' 'mecanismos previstos en este inciso. El contenido del Plan de contratación y ' 'los sustentos del mismo se regularán en el Reglamento de la presente ' 'Ley.</p>\n' ' </div>\n' ' <div class="col-lg-7">\n' ' ', '\n' ' <img src="/static/images/no-document.jpg"/>\n' ' ', '\n' ' </div>\n' ' <div class="row m-t-30">\n' ' <div class="col-lg-12">\n' ' <div class="heading-text heading-line ' 'text-center">\n' ' <h4>REFORMAS REALIZADAS AL PLAN ' 'ANUAL DE CONTRATACION</h4>\n' ' </div>\n' ' </div>\n' '\n' ' '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
node | <IfNode> |
self | [<TextNode: '\n <section id="page-co'>, <IfNode>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n\n '>, <ForNode: for obj in pac_information, tail_len: 3>, <TextNode: '\n '>] |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 905, in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)…
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
self | <IfNode> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/defaulttags.py
, line 315, in render
match = condition.eval(context)
except VariableDoesNotExist:
match = None
else: # else clause
match = True
if match:
return nodelist.render(context)…
return ''
class LoremNode(Node):
def __init__(self, count, method, common):
Variable | Value |
---|---|
condition | (literal <django.template.base.FilterExpression object at 0x7fccbd6783a0>) |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
match | <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]> |
nodelist | [<TextNode: '\n '>, <Variable Node: doc_inicial.pac_inicial.url>, <TextNode: '" target="_blank" class="'>, <Variable Node: doc_inicial.pac_inicial.url>, <TextNode: '" target="_blank" ><i cla'>, <Variable Node: doc.archivo.url>, <TextNode: '" target="_blank" class="'>] |
self | <IfNode> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 938, in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = node.render_annotated(context)…
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | ('\n' ' <div class="row" style="width:100%;">\n' ' <div class="col-lg-12">\n' ' <h4><i class="fa ' 'fa-angle-double-right"></i> Enero (INICIAL)</h4>\n' ' </div>\n' ' <div class="col-lg-12" ' 'style="width:100%;">\n' ' <div class="card">\n' ' <div class="card-body">\n' ' <div class="row">\n' ' <div class="col-8">\n' ' <h3>PAC</h3>\n' ' <p>Plan Anual de ' 'Contratación Inicial.</p>\n' ' </div>\n' ' <div class="col-4 ' 'text-right">\n' ' <a href="') |
bits | ['\n' ' <div class="row" style="width:100%;">\n' ' <div class="col-lg-12">\n' ' <h4><i class="fa ' 'fa-angle-double-right"></i> Enero (INICIAL)</h4>\n' ' </div>\n' ' <div class="col-lg-12" ' 'style="width:100%;">\n' ' <div class="card">\n' ' <div class="card-body">\n' ' <div class="row">\n' ' <div class="col-8">\n' ' <h3>PAC</h3>\n' ' <p>Plan Anual de ' 'Contratación Inicial.</p>\n' ' </div>\n' ' <div class="col-4 ' 'text-right">\n' ' <a href="'] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
node | <Variable Node: doc_inicial.pac_inicial.url> |
self | [<TextNode: '\n '>, <Variable Node: doc_inicial.pac_inicial.url>, <TextNode: '" target="_blank" class="'>, <Variable Node: doc_inicial.pac_inicial.url>, <TextNode: '" target="_blank" ><i cla'>, <Variable Node: doc.archivo.url>, <TextNode: '" target="_blank" class="'>] |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 905, in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)…
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
self | <Variable Node: doc_inicial.pac_inicial.url> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 988, in render
self.filter_expression = filter_expression
def __repr__(self):
return "<Variable Node: %s>" % self.filter_expression
def render(self, context):
try:
output = self.filter_expression.resolve(context)…
except UnicodeDecodeError:
# Unicode conversion can fail sometimes for reasons out of our
# control (e.g. exception rendering). In that case, we fail
# quietly.
return ''
return render_value_in_context(output, context)
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
self | <Variable Node: doc_inicial.pac_inicial.url> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 671, in resolve
self.filters = filters
self.var = var_obj
def resolve(self, context, ignore_failures=False):
if isinstance(self.var, Variable):
try:
obj = self.var.resolve(context)…
except VariableDoesNotExist:
if ignore_failures:
obj = None
else:
string_if_invalid = context.template.engine.string_if_invalid
if string_if_invalid:
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
ignore_failures | False |
self | <django.template.base.FilterExpression object at 0x7fccbd678220> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 796, in resolve
var)
self.lookups = tuple(var.split(VARIABLE_ATTRIBUTE_SEPARATOR))
def resolve(self, context):
"""Resolve this variable against a given context."""
if self.lookups is not None:
# We're dealing with a variable that needs to be resolved
value = self._resolve_lookup(context)…
else:
# We're dealing with a literal, so it's already been "resolved"
value = self.literal
if self.translate:
is_safe = isinstance(value, SafeData)
msgid = value.replace('%', '%%')
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
self | <Variable: 'doc_inicial.pac_inicial.url'> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/template/base.py
, line 837, in _resolve_lookup
# ValueError/IndexError are for numpy.array lookup on
# numpy < 1.9 and 1.9+ respectively
except (TypeError, AttributeError, KeyError, ValueError, IndexError):
try: # attribute lookup
# Don't return class attributes if the class is the context:
if isinstance(current, BaseContext) and getattr(type(current), bit):
raise AttributeError
current = getattr(current, bit)…
except (TypeError, AttributeError):
# Reraise if the exception was raised by a @property
if not isinstance(current, BaseContext) and bit in dir(current):
raise
try: # list-index lookup
current = current[int(bit)]
Variable | Value |
---|---|
bit | 'url' |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'doc_inicial': <ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>, 'pac_information': <QuerySet [<ConvocatoriasSesionesActasPage: Gestión Institucional [Enero-2015]>]>, 'year': 2015, 'unique_month': {1}, 'unique_year': {2017, 2018, 2019, 2020, 2021, 2022, 2023, 2012, 2014, 2015}, 'last_year': [2024, 2023, 2022, 2021], 'current_year': 2024}] |
current | <FieldFile: None> |
self | <Variable: 'doc_inicial.pac_inicial.url'> |
template_name | 'webpage/pac.html' |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/db/models/fields/files.py
, line 63, in url
@property
def path(self):
self._require_file()
return self.storage.path(self.name)
@property
def url(self):
self._require_file()…
return self.storage.url(self.name)
@property
def size(self):
self._require_file()
if not self._committed:
Variable | Value |
---|---|
self | <FieldFile: None> |
/var/www/gadwebs/.venv/lib/python3.8/site-packages/django/db/models/fields/files.py
, line 40, in _require_file
# The standard File contains most of the necessary properties, but
# FieldFiles can be instantiated without a name, so that needs to
# be checked for here.
def _require_file(self):
if not self:
raise ValueError("The '%s' attribute has no file associated with it." % self.field.name)…
def _get_file(self):
self._require_file()
if getattr(self, '_file', None) is None:
self._file = self.storage.open(self.name, 'rb')
return self._file
Variable | Value |
---|---|
self | <FieldFile: None> |
AnonymousUser
No GET data
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
CONTEXT_DOCUMENT_ROOT | '/var/www/gadwebs' |
CONTEXT_PREFIX | '' |
DOCUMENT_ROOT | '/var/www/gadwebs' |
GATEWAY_INTERFACE | 'CGI/1.1' |
HTTP_ACCEPT | '*/*' |
HTTP_HOST | 'sanantoniodelpeludo.gob.ec' |
HTTP_REFERER | 'http://sanantoniodelpeludo.gob.ec/pac/2015' |
HTTP_USER_AGENT | 'claudebot' |
PATH_INFO | '/pac/2015/' |
PATH_TRANSLATED | '/var/www/gadwebs/config/wsgi.py/pac/2015/' |
QUERY_STRING | '' |
REMOTE_ADDR | '3.85.38.100' |
REMOTE_PORT | '52768' |
REQUEST_METHOD | 'GET' |
REQUEST_SCHEME | 'http' |
REQUEST_URI | '/pac/2015/' |
SCRIPT_FILENAME | '/var/www/gadwebs/config/wsgi.py' |
SCRIPT_NAME | '' |
SERVER_ADDR | '194.195.220.59' |
SERVER_ADMIN | '[no address given]' |
SERVER_NAME | 'sanantoniodelpeludo.gob.ec' |
SERVER_PORT | '80' |
SERVER_PROTOCOL | 'HTTP/1.1' |
SERVER_SIGNATURE | '********************' |
SERVER_SOFTWARE | 'Apache/2.4.41 (Ubuntu)' |
apache.version | (2, 4, 41) |
mod_wsgi.application_group | 'sanantoniodelpeludo.gob.ec|' |
mod_wsgi.callable_object | 'application' |
mod_wsgi.daemon_connects | '1' |
mod_wsgi.daemon_restarts | '0' |
mod_wsgi.daemon_start | '1711717987219948' |
mod_wsgi.enable_sendfile | '0' |
mod_wsgi.handler_script | '' |
mod_wsgi.ignore_activity | '0' |
mod_wsgi.listener_host | '' |
mod_wsgi.listener_port | '80' |
mod_wsgi.path_info | '/pac/2015/' |
mod_wsgi.process_group | 'sanantonio' |
mod_wsgi.queue_start | '1711717987219806' |
mod_wsgi.request_handler | 'wsgi-script' |
mod_wsgi.request_id | 'zniVZmx0QdY' |
mod_wsgi.request_start | '1711717987219662' |
mod_wsgi.script_name | '' |
mod_wsgi.script_reloading | '1' |
mod_wsgi.script_start | '1711717987220002' |
mod_wsgi.thread_id | 3 |
mod_wsgi.thread_requests | 58 |
mod_wsgi.total_requests | 221 |
mod_wsgi.version | (4, 6, 8) |
wsgi.errors | <_io.TextIOWrapper name='<wsgi.errors>' encoding='utf-8'> |
wsgi.file_wrapper | <class 'mod_wsgi.FileWrapper'> |
wsgi.input | <mod_wsgi.Input object at 0x7fccc72716c0> |
wsgi.input_terminated | True |
wsgi.multiprocess | False |
wsgi.multithread | True |
wsgi.run_once | False |
wsgi.url_scheme | 'http' |
wsgi.version | (1, 0) |
config.settings
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | [] |
ALLOWED_HOSTS | ['*'] |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ['django.contrib.auth.backends.ModelBackend'] |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'auth.User' |
BASE_DIR | PosixPath('/var/www/gadwebs') |
BASE_URL | PosixPath('/var/www/gadwebs') |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CAPTCHA_BACKGROUND_COLOR | '#bedaf3' |
CAPTCHA_FONT_SIZE | 30 |
CAPTCHA_LENGTH | 5 |
CKEDITOR_BASEPATH | '/static/ckeditor/ckeditor/' |
CKEDITOR_CONFIGS | {'complete': {'toolbar': 'Basic'}, 'default': {'toolbar': 'Custom', 'toolbar_Custom': [['Bold', 'Italic', 'Underline'], ['NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', '-', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock'], ['Link', 'Unlink'], ['RemoveFormat', 'Source']], 'uiColor': '#9AB8F3'}, 'iframe': {'extraAllowedContent': 'video[*]{*}', 'extraPlugins': 'html5video', 'toolbar': 'Custom', 'toolbar_Custom': [['Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript'], ['TextColor', 'BGColor'], ['NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', '-', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock'], ['Link', 'Unlink'], ['Iframe', 'Image', 'Table', 'HorizontalRule', 'Smiley', 'SpecialChar', 'PageBreak'], ['RemoveFormat', 'Source'], ['Styles', 'Format', 'Font', 'FontSize']], 'uiColor': '#9AB8F3'}, 'tarjeta_servicio': {'toolbar': 'Custom', 'toolbar_Custom': [['Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript'], ['TextColor', 'BGColor'], ['NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', '-', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock'], ['Link', 'Unlink'], ['Table', 'HorizontalRule', 'Smiley', 'SpecialChar', 'PageBreak'], ['RemoveFormat', 'Source'], ['Styles', 'Format', 'Font', 'FontSize']], 'uiColor': '#9AB8F3'}} |
CKEDITOR_UPLOAD_PATH | 'uploads/' |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | False |
CSRF_COOKIE_NAME | 'csrftoken' |
CSRF_COOKIE_PATH | '/' |
CSRF_COOKIE_SAMESITE | 'Lax' |
CSRF_COOKIE_SECURE | False |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_HEADER_NAME | 'HTTP_X_CSRFTOKEN' |
CSRF_TRUSTED_ORIGINS | [] |
CSRF_USE_SESSIONS | False |
DATABASES | {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'ENGINE': 'tenant_schemas.postgresql_backend', 'HOST': 'localhost', 'NAME': 'gadwebs', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': '5432', 'SCHEMA': 'sanantoniodelpeludo', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIGRATE': True, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'tsw'}} |
DATABASE_ROUTERS | ('tenant_schemas.routers.TenantSyncRouter',) |
DATA_UPLOAD_MAX_MEMORY_SIZE | 5242880 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000 |
DATETIME_FORMAT | 'N j, Y, P' |
DATETIME_INPUT_FORMATS | ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M'] |
DATE_FORMAT | 'N j, Y' |
DATE_INPUT_FORMATS | ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y'] |
DEBUG | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
DECIMAL_SEPARATOR | '.' |
DEFAULT_AUTO_FIELD | 'django.db.models.BigAutoField' |
DEFAULT_CHARSET | 'utf-8' |
DEFAULT_EXCEPTION_REPORTER | 'django.views.debug.ExceptionReporter' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
DEFAULT_FILE_STORAGE | 'config.storage.TenantFileSystemStorage' |
DEFAULT_FROM_EMAIL | 'webmaster@localhost' |
DEFAULT_HASHING_ALGORITHM | 'sha256' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DISALLOWED_USER_AGENTS | [] |
DOCS_ROOT | '/var/www/gadwebs/media/rrhh_archivos' |
DOCS_URL | '/media/rrhh_archivos/' |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | 'localhost' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | '' |
EMAIL_PORT | 25 |
EMAIL_SSL_CERTFILE | None |
EMAIL_SSL_KEYFILE | '********************' |
EMAIL_SUBJECT_PREFIX | '[Django] ' |
EMAIL_TIMEOUT | None |
EMAIL_USE_LOCALTIME | False |
EMAIL_USE_SSL | False |
EMAIL_USE_TLS | False |
FILEMANAGER_CHECK_SPACE | True |
FILEMANAGER_DIRECTORY | '' |
FILEMANAGER_MEDIA_ROOT | '/var/www/gadwebs/media' |
FILEMANAGER_MEDIA_URL | '/media/' |
FILEMANAGER_SHOW_SPACE | True |
FILEMANAGER_STATIC_ROOT | '/var/www/gadwebs/static/filemanager/' |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler'] |
FILE_UPLOAD_MAX_MEMORY_SIZE | 5242880 |
FILE_UPLOAD_PERMISSIONS | 420 |
FILE_UPLOAD_TEMP_DIR | None |
FIRST_DAY_OF_WEEK | 0 |
FIXTURE_DIRS | [] |
FORCE_SCRIPT_NAME | None |
FORMAT_MODULE_PATH | None |
FORM_RENDERER | 'django.forms.renderers.DjangoTemplates' |
IGNORABLE_404_URLS | [] |
INSTALLED_APPS | ['tenant_schemas', 'cliente', 'apps_permissions', 'coleccion', 'base_legal', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'pkg_webpage', 'ckeditor', 'ckeditor_uploader', 'rendicion_cuentas', 'captcha', 'votacion', 'solicitud', 'menu', 'informes_mensuales', 'turismo', 'formularios', 'rrhh', 'lotaip_2', 'django_social_share'] |
INTERNAL_IPS | [] |
LANGUAGES | [('af', 'Afrikaans'), ('ar', 'Arabic'), ('ar-dz', 'Algerian Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 'Welsh'), ('da', 'Danish'), ('de', 'German'), ('dsb', 'Lower Sorbian'), ('el', 'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 'Argentinian Spanish'), ('es-co', 'Colombian Spanish'), ('es-mx', 'Mexican Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve', 'Venezuelan Spanish'), ('et', 'Estonian'), ('eu', 'Basque'), ('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('fy', 'Frisian'), ('ga', 'Irish'), ('gd', 'Scottish Gaelic'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hsb', 'Upper Sorbian'), ('hu', 'Hungarian'), ('hy', 'Armenian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('ig', 'Igbo'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kab', 'Kabyle'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('ky', 'Kyrgyz'), ('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'), ('tg', 'Tajik'), ('th', 'Thai'), ('tk', 'Turkmen'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('uz', 'Uzbek'), ('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese')] |
LANGUAGES_BIDI | ['he', 'ar', 'ar-dz', 'fa', 'ur'] |
LANGUAGE_CODE | 'es-ec' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_HTTPONLY | False |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LANGUAGE_COOKIE_SAMESITE | None |
LANGUAGE_COOKIE_SECURE | False |
LOCALE_PATHS | [] |
LOGGING | {} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | None |
LOGS_EMAIL_FOLDER | '/var/www/gadwebs/media/email_logs' |
MANAGERS | [] |
MEDIA_ROOT | '/var/www/gadwebs/media' |
MEDIA_URL | '/media/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['tenant_schemas.middleware.TenantMiddleware', 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'config.middleware.MantenimientoCuenta'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PATH_ROOT | '/var/www/gadwebs/static' |
PREPEND_WWW | False |
PUBLIC_SCHEMA_URLCONF | 'config.urls_public' |
ROOT_URLCONF | 'config.urls_tenant' |
ROW_ROOT | 'rrhh_archivos/' |
SECRET_KEY | '********************' |
SECURE_BROWSER_XSS_FILTER | False |
SECURE_CONTENT_TYPE_NOSNIFF | True |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_PRELOAD | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | None |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_REFERRER_POLICY | 'same-origin' |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | False |
SERVER_EMAIL | 'root@localhost' |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_AGE | 1209600 |
SESSION_COOKIE_DOMAIN | None |
SESSION_COOKIE_HTTPONLY | True |
SESSION_COOKIE_NAME | 'sessionid' |
SESSION_COOKIE_PATH | '/' |
SESSION_COOKIE_SAMESITE | 'Lax' |
SESSION_COOKIE_SECURE | False |
SESSION_ENGINE | 'django.contrib.sessions.backends.db' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | True |
SESSION_FILE_PATH | None |
SESSION_SAVE_EVERY_REQUEST | False |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.JSONSerializer' |
SETTINGS_MODULE | 'config.settings' |
SHARED_APPS | ('tenant_schemas', 'cliente', 'apps_permissions', 'coleccion', 'base_legal', 'django.contrib.contenttypes', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'ckeditor', 'ckeditor_uploader') |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
STATICFILES_DIRS | ['/var/www/gadwebs/static'] |
STATICFILES_FINDERS | ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder'] |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | None |
STATIC_URL | '/static/' |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['/var/www/gadwebs/templates'], 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', 'config.context_processors.ctx_dict', 'config.context_processors.tenant_dict']}}] |
TENANT_APPS | ('django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'pkg_webpage', 'ckeditor', 'ckeditor_uploader', 'rendicion_cuentas', 'captcha', 'votacion', 'solicitud', 'menu', 'informes_mensuales', 'turismo', 'formularios', 'rrhh', 'lotaip_2') |
TENANT_MODEL | 'cliente.PaginaWeb' |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
THOUSAND_SEPARATOR | ',' |
TIME_FORMAT | 'P' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'America/Guayaquil' |
USE_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | False |
USE_X_FORWARDED_HOST | False |
USE_X_FORWARDED_PORT | False |
WSGI_APPLICATION | 'config.wsgi.application' |
X_FRAME_OPTIONS | 'DENY' |
YEAR_MONTH_FORMAT | 'F Y' |
You’re seeing this error because you have DEBUG = True
in your
Django settings file. Change that to False
, and Django will
display a standard page generated by the handler for this status code.