Prezados colaboradores da lista,

Estou com dificuldades para usar o searchResults do portal_catalog.

Eu criei uma Pasta de Instituicoes(Large) onde eu insiro Instituicao.
Instituicao é um content_type que possui muitos campos entre eles
alguns do tipo seleção multipla. Eu preciso fazer algumas views para
minha folder filtrando as instituições conforme forem preenchidos os
campos do tipo seleção, pois eles indicam qual é a categoria das
instituições. Para fazer estas views eu pretendo usar o metodo
searchResults do portal_catalog. É aqui que encontro a dificuldade.

Eu criei indice no schema da Insticuição (index="FiledIndex"). Entrei
no portal catalog e vi que o indice está lá. 

Meu field ficou assim:
    StringField(
        name='organizacao_governamental',
        index="FieldIndex",
        widget=MultiSelectionWidget(
            label="Organização Governamental - Poder Público",
            description="Selecione  as opções",
            format="checkbox",
           
label_msgid='ComunidadeVirtual_label_organizacao_governamental',
           
description_msgid='ComunidadeVirtual_help_organizacao_governamental',
            i18n_domain='ComunidadeVirtual',
        ),
        enforceVocabulary=1,
        vocabulary='getOrganizacaoGovernamental_vocab',
        searchable=1
    ),


O Vocabulario deste campo é assim:

        vocabulary = (
                        ['Federal', 'Federal'],
                        ['Estadual', 'Estadual'],
                        ['Municipal', 'Municipal'],
                        ['Empresa de economia mista', 'Empresa de
economia mista'],
                        ['Fundação pública de direito público',
'Fundação pública de direito público'],
                        ['Fundação pública de direito privado',
'Fundação pública de direito privado'],
                        ['Agências de fomento científico-tecnológico',
'Agências de fomento científico-tecnológico'],
                        ['Agência reguladora','Agência reguladora'],
                     )
        return DisplayList(vocabulary)


Preciso fazer uma pesquisa de todas as instituições marcadas com a
opção 'Federal' por exemplo. Vale lembrar que o campo permite
multiplas seleções.

O indice é getOrganizacao_governamental:

Eu tentei algo do tipo:

results = context.portal_catalog.searchResults(portal_type="Instituicao",
                                             review_state="published",
                                            
getOrganizacao_governamental='Federal'
                                               )
E tentei assim também:

results = context.portal_catalog.searchResults(portal_type="Instituicao",
                                             review_state="published",
                                            
getOrganizacao_governamental= {query: ['Federal']}
                                               )


Alguem saberia qual é maneira apropriada de resolver meu problema,
acredito que não seja muito incomum.

Obrigado


Responder a