plonegovbr/brasil.gov.agenda

Erro Adicionar compromisso

almeidajeff opened this issue · 7 comments

Qual versão do produto você está usando e em qual sistema operacional (acesse /@@overview-controlpanel ou /prefs_install_products_form para obter essas informações)?

Portal Padrão 2.0a5.dev0
Plone 4.3.17 (4319)
CMF 2.2.10
Zope 2.13.27
Python 2.7.15 (default, May 15 2018, 15:37:31) [GCC 7.3.1 20180303 (Red Hat 7.3.1-5)]
PIL 3.3.0 (Pillow)

Possui plugins adicionados além dos definidos numa instalação padrão do Portal Padrão? (IMPORTANTE: Pacotes apresentados no manual de funcionalidades avançadas, mesmo que estejam no prefixo brasil.gov.*, são considerados plugins adicionais). Caso sua resposta seja sim, forneça o nome e as versões utilizadas.

Sim, brasil.gov.agenda

Está utilizando o buildout padrão como o usado em https://github.com/plonegovbr/portal.buildout?

Sim

Se a resposta acima foi negativa, está utilizando o arquivo de versões de pinagens das dependências como definido em https://github.com/plonegovbr/portalpadrao.release/ e https://github.com/plonegovbr/brasil.gov.portal#requisitos?

Sim

Quais são os passos para reproduzir o problema?

Adicionar Agenda / Adicionar Compromisso

Qual é o retorno esperado? O que você vê ao contrário do esperado?

A visão da template compromisso

A aplicação forneceu algum erro no console ou na interface? Cole nesse relato o erro completo.

Sim

Module brasil.gov.agenda.browser.compromisso, line 82, in imagem
AttributeError: 'getField'

 - Expression: "view/imagem"
 - Filename:   ... c/brasil/gov/agenda/browser/templates/compromissoview.pt
 - Location:   (line 25: col 34)
 - Source:     <tal:image condition="view/imagem">
                                     ^^^^^^^^^^^
 - Expression: "nocall:context/getField"
 - Filename:   <string>
 - Location:   (line 0: col 0)
 - Expression: "nocall:context/getField"
 - Filename:   <string>
 - Location:   (line 0: col 0)
 - Expression: "nocall:context/getField"
 - Filename:   <string>
 - Location:   (line 0: col 0)
 - Expression: "nocall:context/getField"
 - Filename:   <string>
 - Location:   (line 0: col 0)
 - Arguments:  repeat: {...} (0)
               template: <ViewPageTemplateFile - at 0x7f49bf9a4550>
               views: <ViewMapper - at 0x7f49bf9a4710>
               modules: <instance - at 0x7f49cb1bd8c0>
               args: <tuple - at 0x7f49d775f050>
               here: <ImplicitAcquisitionWrapper testandooo at 0x7f49bfd2ff00>
               user: <ImplicitAcquisitionWrapper - at 0x7f49bfccd230>
               nothing: <NoneType - at 0x7f49d7555dc0>
               container: <ImplicitAcquisitionWrapper testandooo at 0x7f49bfd2ff00>
               request: <instance - at 0x7f49bfb9a950>
               wrapped_repeat: <SafeMapping - at 0x7f49bf97cf18>
               traverse_subpath: <list - at 0x7f49bf6cec68>
               default: <object - at 0x7f49d7735570>
               loop: {...} (1)
               context: <ImplicitAcquisitionWrapper testandooo at 0x7f49bfd2ff00>
               view: <SimpleViewClass from /home/jeffersonramal/Projetos/governo.mdh.portal/src/brasil.gov.agenda/src/brasil/gov/agenda/browser/templates/compromissoview.pt view at 0x7f49bf414e10>
               translate: <function translate at 0x7f49bc09e848>
               root: <ImplicitAcquisitionWrapper Zope at 0x7f49c0389960>
               options: {...} (0)
               target_language: <NoneType - at 0x7f49d7555dc0>
i2018-06-21 11:45:01 ERROR Zope.SiteErrorLog 1529592301.540.631991235528 http://localhost:8080/mdh/teste/agenda-teste/testandooo/view

Por favor forneça informações adicionais que possam complementar o seu relato.

Pelo que analise o erro esta ocorrendo devido a

self.agenda = aq_parent(self.agendadiaria)
que pega o parent do seria a agenda, o erro reportado apresenta erro em view/imagem como o contexto acima não possui este atributo o erro é apresentado.

Estou usando a tag 2.0a2

não conseguir reproduzir usando o branch master da agenda sem o IDG.

@almeidajeff voce pode por favor confirmar se o bug acontece com esse pacote utilizando a versão master? também não consegui simular o problema..

@rodfersou fiz uma instalação do zero do idg e tanto na versão 2.0a2 quanto no master o erro realmente não ocorreu, pressuponho que seja um comportamento que esteja ocorrendo apenas em meu ambiente.

Pelo que analisei, por algum motivo quando eu crio compromisso no meu ambiente ele não esta criando o conteúdo AgendaDiaria.

O comportamento correto é quando criar o compromisso ele ativar este subscriber ?
https://github.com/plonegovbr/brasil.gov.agenda/blob/master/src/brasil/gov/agenda/subscribers/compromisso.py#L83

@almeidajeff boa! ta ai uma coisa que eu estava tentando entender nesse pacote.. não tinha notado esse subscriber.. mas notei nos testes que isso acontece, ao criar um Compromisso é criada uma AgendaDiaria automáticamente.

Agora faz sentido o traceback, ele está tentando publicar uma AgendaDiaria que não existe.. eu precisava debugar esse subscriber, mas o problema não acontece aqui @almeidajeff ; voce consegue verificar onde falha e qual mensagem de erro? usar o plone.api para criar a agenda diária resolveria o problema?

@rodfersou consegui entender o que aconteceu no meu ambiente, o subscriber tem uma condição para ser registrado https://github.com/plonegovbr/brasil.gov.agenda/blob/master/src/brasil/gov/agenda/configure.zcml#L31 , como no meu ambiente eu possuo o pacote transmogrify.dexterity instalado ele não inclui o subscriber.

Pelo que eu vi, os comportamentos do subscribers estão corretos, mas sem esse registro a agenda não fica funcional.

Att,
Jefferson Almeida

acho que podemos fechar a issue então.