Modelos de fragmentos do conteúdo, consultas persistentes e pacotes de conteúdo content-fragment-models-persisted-queries-and-content-packages

Os modelos de fragmento de conteúdo e as consultas persistentes do GraphQL são conteúdos que podem ser criados e atualizados:

  • Modelos de fragmentos do conteúdo: /conf/<config>/settings/dam/cfm/models)
  • consultas persistentes do GraphQL: (/conf/<config>/settings/graphql/persistentQueries)

Muitos projetos os mantêm no Git e os enviam em um pacote de conteúdo. O modo de filtro desse pacote determina o que acontece (incluindo modelos e consultas criadas no autor):

  • mode="replace"

    • a cada nó:

      1. coberto pelo filtro
      2. mas não contido no pacote
      3. é excluído na criação e publicação sempre que o pacote é instalado durante uma implantação do Cloud Manager
    • é o modo padrão quando nenhum modo é explicitamente definido.

Consultas persistentes que dependem de um modelo excluído dessa maneira falham com Schema provider failed.

O FileVault aplica a primeira entrada de filtro quando a raiz cobre um caminho, portanto, a ordem das entradas de filtro é importante. Uma entrada ampla, como /conf/<config>, terá prioridade quando for colocada antes de uma entrada mais específica.

Configurações recomendadas, dependendo de quem é o proprietário dos modelos e consultas:

  • Mantido no Git:

    • uma raiz de filtro por modelo ou consulta persistente pertencente ao pacote, colocada antes de /conf entradas mais amplas.
      Assim, o conteúdo criado no autor não será afetado.
    • Se conf entradas com um escopo mais amplo existem, você pode garantir que elas usem um modo de não exclusão, como update_properties, ou simplesmente excluir conteúdo específico de propriedade do autor.
  • Propriedade mista:

    • mode="update_properties": adiciona e atualiza, mas nunca exclui.

      A conclusão é que um modelo ou campo removido no Git permanece no AEM.

  • Pertencente a autores:

    • Não os inclua no pacote ou apenas os seed uma vez com mode="merge_properties"

      A mesclagem não é adequada para modelos mantidos no Git, pois os nós existentes são deixados intactos e as alterações no modelo nunca são implantadas. O FileVault também descontinuou a mesclagem e atualização em favor de merge_properties e update_properties.

Exemplo de um projeto que mantém dois modelos no Git e permite que os autores criem outros:

<filter root="/conf/wknd/settings/dam/cfm/models/article"/>
<filter root="/conf/wknd/settings/dam/cfm/models/author"/>
<filter root="/conf/wknd" mode="update_properties"/>

Recursos adicionais further-resources

Consulte também:

recommendation-more-help
experience-manager-cloud-service-help-main-toc