MM : affichage des données liées

Comment utiliser Contao
charled
Membre
Messages : 382
Inscription : 14 Juin 2008 15:54
Localisation : Au pied du Luberon…

MM : affichage des données liées

Messagepar charled » 13 Juil 2015 16:20

Bonjour à tous,

Deux questions à propos des données liées dans MM.

J'utilise MM pour afficher le programme culturel d'une association. Ce programme est saisonnier. Une saison est à cheval sur 2 années et comporte des événements (venue d'un auteur par exemple). Ces événements peuvent contenir 1 ou plusieurs rencontres (plusieurs rencontres avec ou autour de l'auteur). Chaque rencontre peut avoir lieu à une ou plusieurs date(s).

Traduit en MM, ça donne :
- mm_saisons
- mm_événements
- mm_rencontre(s)
- mm_dates
Chaque table étant bien sûr liée à sa table parente par un champs select.

1. Dans le FE, une page doit lister les événements de la saison en cours. Un clic sur un événement, affichera sa page de détail.
Comment afficher dans cette page, la liste des rencontres et pour chaque l'ensemble des dates concernées. Dans Catalog, il y avait un module spécifique (encore qu'il ne descendait par défaut que d'un niveau) mais dans MM je ne vois pas bien. Quelqu'un a déjà testé ?

2. Dans le BE, pensez-vous possible l'ajout des dates (c'est à dire la création des enregistrement dans la table mm_dates) directement depuis l'écran de saisie/modification d'une rencontre (pour éviter à l'utilisateur de faire des allers-retours).

Merci de vos conseils, idées et bon feu d'artifice.

Avatar de l’utilisateur
tom-over
Membre
Messages : 829
Inscription : 23 Mai 2008 10:43
Localisation : Rouen

Re: MM : affichage des données liées

Messagepar tom-over » 15 Juil 2015 10:25

charled a écrit :Traduit en MM, ça donne :
- mm_saisons
- mm_événements
- mm_rencontre(s)
- mm_dates
Pourquoi faire une table mm_saisons ?

charled a écrit :1. Dans le FE, une page doit lister les événements de la saison en cours. Un clic sur un événement, affichera sa page de détail.
Comment afficher dans cette page, la liste des rencontres et pour chaque l'ensemble des dates concernées. Dans Catalog, il y avait un module spécifique (encore qu'il ne descendait par défaut que d'un niveau) mais dans MM je ne vois pas bien. Quelqu'un a déjà testé ?
C'est possible d'intégrer dans cette page une liste prés filtré avec d'autre filtre pour affiner les résultats pour rechercher les événements.
J'ai fait ça sur une fiche produit pour afficher les variantes. des filtres permettaient d'affiner la liste pour récupérer le code article de la variante

charled a écrit :2. Dans le BE, pensez-vous possible l'ajout des dates (c'est à dire la création des enregistrement dans la table mm_dates) directement depuis l'écran de saisie/modification d'une rencontre (pour éviter à l'utilisateur de faire des allers-retours).

à ma connaissance ce n'est pas possible puisque dans le BE tu ne peux choisir des champs d'une même table uniquement.
ça sera peut être prévu dans les évolutions futurs je l'espère ;)

charled
Membre
Messages : 382
Inscription : 14 Juin 2008 15:54
Localisation : Au pied du Luberon…

Re: MM : affichage des données liées

Messagepar charled » 15 Juil 2015 11:58

Bonjour Tom-Over,

Pourquoi faire une table mm_saisons ?

Pour pouvoir rattacher chaque événement à une saison (2013/2014, 2014/2015, 2015/2016…) chaque saison étant à cheval sur deux années (de septembre à juin). Et pouvoir ainsi lister les événements de la saison en cours ainsi que ceux des saisons précédentes sur une page archives.

C'est possible d'intégrer dans cette page une liste prés filtré avec d'autre filtre pour affiner les résultats pour rechercher les événements.
J'ai fait ça sur une fiche produit pour afficher les variantes. des filtres permettaient d'affiner la liste pour récupérer le code article de la variante

Quels filtres as-tu utilisés ? Je ne vois pas comment filtrer(notamment) sur l'ID événement qui dépendra justement de l'événement affiché.
Le principe est que je dois lister et filtrer les donnée de la table mm_rencontres et de la "sous-table" mm_dates pour afficher :
- rencontre 1
- date 1
- date 2
- rencontre 2
- date 1
- rencontre 3
- …
charled a écrit :2. Dans le BE, pensez-vous possible l'ajout des dates (c'est à dire la création des enregistrement dans la table mm_dates) directement depuis l'écran de saisie/modification d'une rencontre (pour éviter à l'utilisateur de faire des allers-retours).

à ma connaissance ce n'est pas possible puisque dans le BE tu ne peux choisir des champs d'une même table uniquement.
ça sera peut être prévu dans les évolutions futurs je l'espère ;)

Je ne me faisais pas trop d'illusions ;-) espérons en effet…

Avatar de l’utilisateur
tom-over
Membre
Messages : 829
Inscription : 23 Mai 2008 10:43
Localisation : Rouen

Re: MM : affichage des données liées

Messagepar tom-over » 15 Juil 2015 13:32

J'ai fait un filtre avec un seul critère : "Recherche simple" en sélectionnant l'attribut "Alias"
Ce filtre est sélectionné dans le type d'élément : "Liste de Metamodels" de la page de détail (fiche produit)

Pour le filtre des variantes, j'ai créer un filtre avec les attributs me permettant d'affiner la recherche. j'ai également ajouté l'alias dans les éléments à filtrer qui je n'utilise pas maintenant.

Dans la page détail j'ai créer une liste de variante.
lors de la création de ce cet éléments, j'ai sélectionné le filtre créé juste avant en cochant pour l'alias alias + "utiliser le paramètre GET.
Cette liste sera donc prés filtré à l'aide de l'alias.

Ce n'est pas évident à expliqué sur un forum MM :?

En gros tu devrais avoir pour créer cette page détail :
- une liste pour afficher le détail de l’événement avec un paramètre de filtre (alias)
- un filtre pour affiner les rencontres
- une liste pour afficher les rencontres avec un paramètre de filtre (ne pas oublier de cocher le GET pour l'alias)

charled
Membre
Messages : 382
Inscription : 14 Juin 2008 15:54
Localisation : Au pied du Luberon…

Re: MM : affichage des données liées

Messagepar charled » 15 Juil 2015 13:42

Merci. Je vais tester ça.
tom-over a écrit :(ne pas oublier de cocher le GET pour l'alias)

Pourquoi c'est GET qu'il faut utiliser ici ?

Avatar de l’utilisateur
tom-over
Membre
Messages : 829
Inscription : 23 Mai 2008 10:43
Localisation : Rouen

Re: MM : affichage des données liées

Messagepar tom-over » 16 Juil 2015 09:15

charled a écrit :Merci. Je vais tester ça.
Pourquoi c'est GET qu'il faut utiliser ici ?
Car le filtre utilise la variable qui est dans l'url pour prés filtrer la liste de variable pour moi;)

Dans ton cas ça sera la liste des rencontres de l’événement choisi...
Car si j'ai bien compris les rencontre sont rattachées à un événement ?

J'ai utilisé alias dans mon cas mais tu peux passer dans l'url l'alias + l'id.
L'id sera à utiliser pour lister les rencontres ;)

charled
Membre
Messages : 382
Inscription : 14 Juin 2008 15:54
Localisation : Au pied du Luberon…

Re: MM : affichage des données liées

Messagepar charled » 16 Juil 2015 09:27

tom-over a écrit :
charled a écrit :Merci. Je vais tester ça.
Pourquoi c'est GET qu'il faut utiliser ici ?
Car le filtre utilise la variable qui est dans l'url pour prés filtrer la liste de variable pour moi;)

Dans ton cas ça sera la liste des rencontres de l’événement choisi...
Car si j'ai bien compris les rencontres sont rattachées à un événement ?


Ok. C'est bien ça. Un événement (exemple la venue d'un auteur) va générer une ou plusieurs rencontres (ex : lecture d'une de ses œuvres, discussion avec le public, atelier d'écriture, rencontre avec les élève d'une classe…) Et chaque rencontre pourra avoir lieu 1 ou plusieurs fois d'où la "sous-table" mm_dates.

Et c'est d'ailleurs là que ma question se corse me semble-t-il… Comment dans ma liste de rencontres, j'arrive à "sous-lister" aussi les différentes dates desdites rencontres sur le principe :
• rencontre 1
- date 1
- date 2
• rencontre 2
- date 1
• rencontre 3
- date 1
- date 2

Avatar de l’utilisateur
tom-over
Membre
Messages : 829
Inscription : 23 Mai 2008 10:43
Localisation : Rouen

Re: MM : affichage des données liées

Messagepar tom-over » 16 Juil 2015 16:41

En effet je ne vois pas trop comment faire...

Tu as un accès préprod pour que je jette un oeil ?

charled
Membre
Messages : 382
Inscription : 14 Juin 2008 15:54
Localisation : Au pied du Luberon…

Re: MM : affichage des données liées

Messagepar charled » 16 Juil 2015 16:43

tom-over a écrit :En effet je ne vois pas trop comment faire...

Tu as un accès préprod pour que je jette un oeil ?


J'avais posé la question sur le forum allemand et j'ai eu la réponse d'un des devs. Il faut agir au niveau du modèle php. Je vais essayer mais il y a des chances que ce soit la bonne réponse.

Avatar de l’utilisateur
tom-over
Membre
Messages : 829
Inscription : 23 Mai 2008 10:43
Localisation : Rouen

Re: MM : affichage des données liées

Messagepar tom-over » 16 Juil 2015 17:14

• rencontre 1
- date 1
- date 2
• rencontre 2
- date 1
• rencontre 3
- date 1
- date 2


Ces infos sont sur la même page ?

charled
Membre
Messages : 382
Inscription : 14 Juin 2008 15:54
Localisation : Au pied du Luberon…

Re: MM : affichage des données liées

Messagepar charled » 16 Juil 2015 17:20

tom-over a écrit :Ces infos sont sur la même page ?

Oui. Les dates sont dans une table liée pour pouvoir gérer plusieurs dates pour une même rencontre.
Au niveau FE, je veux avoir sur la même page :
- les infos d'un événement
- les différentes rencontres liées avec les dates correspondantes :
• rencontre 1
- date 1
- date 2
• rencontre 2
- date 1
• rencontre 3
- date 1
- date 2

charled
Membre
Messages : 382
Inscription : 14 Juin 2008 15:54
Localisation : Au pied du Luberon…

Re: MM : affichage des données liées

Messagepar charled » 16 Juil 2015 19:16

tom-over a écrit :En effet je ne vois pas trop comment faire...

Tu as un accès préprod pour que je jette un oeil ?


Si je t'envoie ça par mp. Merci.

charled
Membre
Messages : 382
Inscription : 14 Juin 2008 15:54
Localisation : Au pied du Luberon…

1ère partie résolue

Messagepar charled » 16 Juil 2015 23:18

Ca y est, j'ai trouvé comment faire le lien ! Je ne suis pas sûr d'avoir tout compris mais je ne touche plus rien et je reverrai ça à tête reposée.
En tout cas, je n'ai pas eu à utiliser GET (qui n'est dispo que si on choisit Paramètre statique dans le filtre).

Par contre, j'ai utilisé du choisir auto_item dans paramètre URL et cocher Permettre valeur vide.

Reste à modifier le template pour afficher les dates aussi…

J'essaierai de mettre à jour le site pré-prod pour que tu puisses me donner ton avis quand même (pas avant lundi). Mais ça ressemble à la réponse du dev de MetaModels qui ne parlait pas de GET.

Avatar de l’utilisateur
tom-over
Membre
Messages : 829
Inscription : 23 Mai 2008 10:43
Localisation : Rouen

Re: MM : affichage des données liées

Messagepar tom-over » 17 Juil 2015 10:11

J'ai modifié ton filtre "FE - Filtre rencontres d'un événement" dans "Rencontre"

J'ai créer un filtre "recherche simple" prenant en compte l'attribut "lien_evenement" puisque j'ai remarqué que c'était ton lien entre les tables "Événements" et "Rencontre".
J'ai renseigné le champs paramètre URL "auto_item"

Maintenant sur la page "Détail événement" j'ai modifié la liste en cochant le paramètre GET.
ça permet de filtrer les "Rencontres" de l’événement affiché.

Si tu décoches, ça liste toutes les rencontres de ta table

charled
Membre
Messages : 382
Inscription : 14 Juin 2008 15:54
Localisation : Au pied du Luberon…

Re: MM : affichage des données liées

Messagepar charled » 17 Juil 2015 11:33

Merci de ton aide. Il faut que je teste ta solution. Comme je te dis j'y suis arrivé sans GET et Schiffler n'en parlais pas.
Pour être precis, j'ai testé avec GET coché puis j'ai désactivé l'une pu l'autre option pour trouver ce qui fonctionne. Et j'ai pu désactiver l'option Paramètre statique quo fait alors dosparaitre l'option GET. D'où je deduis que GET n'est pas indispensable… Non que ça me gêne d'utiliser GET ;-) J'essaie juste de comprendre le fonctionnement…


Revenir vers « Utilisation de Contao »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 9 invités