Documentation en ligne

Paramétrage avancé des fiches

Lier un modèle de fiche à une page

Généralités

Depuis le menu burger d'une page du portail, vous pouvez utiliser l'entrée « Lier un modèle de fiche » pour choisir le modèle auquel vous voulez lier la page.

Avoir cette liaison permet de disposer d'un paramètre supplémentaire dans les cellules Fiche(s) de la page : « Fiche dont l'identifiant est dans l'URL ». Ce paramètre autorisera l'utilisation d'une URL du type HTTPS://ADRESSE-DE-LA-PAGE/IDENTIFIANT-FICHE/ pour afficher une fiche donnée.

Faire un moteur de recherche sur les fiches

La cellule recherche de combo peut être configurée pour chercher des usagers, codes de suivi, pages et/ou demandes.

De la même façon cette cellule, peut être utilisée pour chercher des fiches en plus ou à la place des éléments précités. Pour cela vous devez, dans cet ordre :

  1. Créer une page dédiée dans combo et utiliser l'entrée « Lier un modèle de fiche » dans le menu burger. Sélectionner le modèle de fiche concerné.
  2. Ajouter sur cette page une cellule « Fiche(s) » et choisir comme fiche à afficher « Fiche dont l'identifiant est dans l'URL ».
  3. Sur une autre page du portail, configurer une cellule recherche pour qu'elle utilise cette page. Dans l'écran de configuration de la cellule, en face de  « Ajouter : », cliquer sur le nom de la page que vous venez de configurer.
Des options supplémentaires pour la recherche de fiches depuis le portail donnent la possibilité de limiter la recherche à une vue personnalisée et de ne pas prendre en compte l’usager connecté. Cochez cette case si vous n'avez pas de résultats dans le moteur.

Lier un usager à une fiche

Il est fréquemment utile de lier une fiche particulière, contenant des informations métier, à un usager (à un compte) dans Publik. Le but étant :
  • de pouvoir donner à cet usager des droits particuliers pour voir / modifier la fiche en question,
  • de permettre aux agents habilités de voir immédiatement les informations métier liées à tel ou tel usager.
Pour pouvoir lier des usagers à des fiches, il est nécessaire d'activer dans le modèle de fiche « Lien avec un usager » (en choisissant « Optionnel »).
Une fois fait, on dispose lors de la création ou de la modification de chaque fiche d'une liste déroulante des utilisateurs en barre latérale, elle permet de choisir l'usager que l'on souhaite associer à la fiche.
Lorsqu'une fiche est liée à un usager, le filtre |filter_by_user pourra être utilisé. Par exemple dans une cellule « Contenu d'une fiche », on pourra récupérer l'identifiant d'une fiche grâce à une expression du type :
{% load wcs %}{{ cards|objects:"enfant"|filter_by_user:request.user|first|get:"id"}}
|filter_by_user:considered_user peut-être utilisé dans les formulaires/fiches pour désigner le demandeur et pas la personne connectée (pour un usage backoffice).

Construire une couche cartographique avec des fiches

Pour construire une couche cartographique basée sur des fiches, vous devez concevoir un modèle de fiche avec :
 Vous pourrez alors utiliser une URL de ce type comme couche cartographique dans combo :
{{eservices_url}}api/cards/IDENTIFIANT-MODELE-DE-FICHE/geojson?1=on&3=on&4=on&5=on
 Cette couche cartographique sera ensuite utilisable pour afficher une carte sur le portail via une cellule carte.

Utiliser plusieurs fiches liées à une demande

Les données d'une fiche liée à une demande sont accessibles depuis cette dernière grâce aux variables {{ form_links_IDENTIFIANT_XXX }} ou XXX désigne les champs de la fiche et IDENTIFIANT le nom de l'action qui l'a créée.

Si plusieurs fiches sont liées à une demande suite à un appel webservice, il est possible d'accéder séparément aux informations des différentes fiches en utilisant un numéro d'index pour désigner la fiche visée :

{{ form_links_IDENTIFIANT_0_form_url }}.

L'ensemble des fiches est en effet accessible dans une liste via :

{{ form_links_IDENTIFIANT }}

Affichage expérimental (déconseillé) : la cellule Prototype JSON

Cette pratique est déconseillée au profit des cellules Fiches et Contenu d'une fiche. Une cellule prototype JSON n'est pas conçue pour être exploitée en production. Il est possible en revanche de s'en servir de modèle pour développer une cellule combo spécifique utilisable en production.

Configurer un accès aux API

Il s'agit d'un pré-requis. Pour pouvoir utiliser une cellule Prototype JSON, vous devez au préalable créer un compte d'accès aux API.

Depuis l'entrée « Gestion d'identité » du menu latéral vous pouvez accéder à « Clients d'API » puis « Ajouter un nouveau client d'API ».

Vous choisissez alors un nom, un identifiant et un mot de passe (c'est une bonne idée de conserver le mot de passe automatiquement généré) pour cet accès. Après création du compte, ces paramètres seront utilisables dans l'URL de la cellule JSON.

Configurer la cellule

Dans la cellule Combo il faut spécifier une URL de la forme :
https://IDENTIFIANT-API:MOT-DE-PASSE-API@{{eservices_url|split:"://"|get:1}}api/cards/SLUG-DE-LA-FICHE/list/SLUG-DE-LA-VUE/?full=on
Mettez <pre>{{json|pprint}}</pre> dans le corps de la cellule pour afficher l'ensemble de la réponse JSON
Parsez le JSON en utilisant du HTML pour afficher et mettre en forme uniquement les informations que vous souhaitez afficher dans la cellule (et supprimez <pre>{{json|pprint}}</pre> une fois que c'est fait).

Ajouter le paramètre full=on à l'URL de la cellule permettra de disposer de tous les champs des fiches dans le JSON récupéré.

Dernière mise à jour le 11 janvier 2023 15:38 — Éditer