Skip to content

Ausência de missão entrega erro #117

@robertatakenaka

Description

@robertatakenaka

Descrição do problema

Acesse scielo.br/j/rbcf/

Problema ocorre devido à ausência de missão em determinado idioma.
Na ausência de idioma retornar None.

ERROR:webapp:Exception on /j/rbcf/ [GET]
Traceback (most recent call last):
  File "/app/src/opac-schema/opac_schema/v1/models.py", line 610, in get_mission_by_lang
    return dict_mission[lang]
           ~~~~~~~~~~~~^^^^^^
KeyError: 'en'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/app/src/opac-schema/opac_schema/v1/models.py", line 613, in get_mission_by_lang
    return dict_mission['en']
           ~~~~~~~~~~~~^^^^^^
KeyError: 'en'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/flask/app.py", line 2525, in wsgi_app
    response = self.full_dispatch_request()
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/flask/app.py", line 1822, in full_dispatch_request
    rv = self.handle_user_exception(e)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/flask/app.py", line 1820, in full_dispatch_request
    rv = self.dispatch_request()
         ^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/flask/app.py", line 1796, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/flask_caching/__init__.py", line 404, in decorated_function
    rv = self._call_fn(f, *args, **kwargs)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/flask_caching/__init__.py", line 180, in _call_fn
    return ensure_sync(fn)(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/opac/webapp/main/views.py", line 544, in journal_detail
    return render_template("journal/detail.html", **context)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/flask/templating.py", line 147, in render_template
    return _render(app, template, context)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/flask/templating.py", line 130, in _render
    rv = template.render(context)
         ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/elasticapm/instrumentation/packages/base.py", line 211, in call_if_sampling
    return self.call(module, method, wrapped, instance, args, kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/elasticapm/instrumentation/packages/jinja2.py", line 43, in call
    return wrapped(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/jinja2/environment.py", line 1289, in render
    self.environment.handle_exception()
  File "/usr/local/lib/python3.11/site-packages/jinja2/environment.py", line 924, in handle_exception
    raise rewrite_traceback_stack(source=source)
  File "/app/opac/webapp/templates/journal/detail.html", line 1, in <module>
    {% extends "journal/base.html" %}
    ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/opac/webapp/templates/journal/base.html", line 1, in <module>
    {% extends "base.html" %}
  File "/app/opac/webapp/templates/base.html", line 16, in <module>
    {% block extra_meta %}{% endblock %}
    ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/opac/webapp/templates/journal/base.html", line 6, in <module>
    {% include "journal/includes/meta.html" %}
    ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/opac/webapp/templates/journal/includes/meta.html", line 6, in <module>
    <meta property="og:description" content="{{ journal.get_mission_by_lang(session.lang[:2])|safe|default(_("Periódico sem missão cadastrada"), true) }}"/>
    ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/src/opac-schema/opac_schema/v1/models.py", line 616, in get_mission_by_lang
    return next(dict_mission.values())
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: 'dict_values' object is not an iterator

Passos para reproduzir o problema

  1. Acesse a página ...
  2. Clique no link ...
  3. Role a página até ...
  4. Observe o erro apresentado

Comportamento esperado

Descreva com clareza qual seria o comportamento esperado (correto) ao reproduzir os passos acima.

Screenshots ou vídeos

Para dar mais detalhes e contexto sobre o erro, considere anexar fotos ou vídeos do problema.

Anexos

Está seção é opcional, utilize para referenciar arquivos que servem de insumo para reproduzir o erro, ex:

  • XML utilizado
  • HTML produzido
  • PDF criado

Ambiente utilizado

Quando aplicável, forneça detalhes sobre o ambiente utilizado, ex:

  • Navegador Mozilla Firefox versão 30
  • Windows XP
  • PC programs versão 1.0
  • Aparelho celular iPhone 7, iOS 7

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions