IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

Formulaires et relationnel [Drupal]


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre expérimenté
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 875
    Points : 1 394
    Points
    1 394
    Par défaut Formulaires et relationnel
    Bonjour,

    Je réfléchis actuellement à migrer totalement une solution de publication sous drupal.

    La solution actuelle repose sur ce schéma:

    Access>XML>OpenXML>PDF
    >SQL (Drupal)

    Ceci signifie que je gère un contenu relationnel sous access que j'exporte en XML. De là des transformations XSL me permettent de générer des fichiers Word (Open XML) et un script sql pour alimenter un drupal avec des nodes.

    Comme mes collègues ont du mal à accepter la base access comme point de départ mais qu'en revanche ils aiment bien drupal, je pensais refaire l'ensemble sous une autre forme.

    DRUPAL>XML>OpenXML

    Ceci me permettrait de m'affranchir de pas mal de scripts, et de permettre à mes utilisateurs de profiter de la solution CMS Drupal pour l'édition de leur catalogue produit (ce sont des formations).

    Je bute sur un point dans drupal pour y parvenir: les relations 1 à N dans drupal. J'utilise bien sûr le module reference pour certaines relations mais ce n'est pas suffisant pour certains points.

    Je m'explique.

    Une plan de cours est généralement formé ainsi (il peut y avoir d'autres champs mais je simplifie):
    - un titre (un champ texte)
    - une durée (idem)
    - un prix (idem)
    - une filière (à laquelle elle appartient, ce que je fais avec référence)
    - DES objectifs (un champ à nombre de valeurs illimité dans drupal)
    - Un contenu de formation (et c'est sur ce point que je bloque)

    En effet un contenu de formation est composé ainsi:

    -Thème 1
    -contenu 1
    -contenu 2
    -Thème 2
    -contenu 3
    -contenu 4

    Donc pour les thèmes pas de souci, c'est un champ à nombre de valeurs illimitées, mais ce champ à des enfants.

    Il est possible de réaliser cela en créant des node type pour les thèmes et les contenus et en utilisant le module référence, mais mon problème survient lors de la saisie d'un plan de cours. Cela devient ingérable car il faut créer énormément de node pour un seul plan de cours. Ce n'est pas du tout ergonomique.

    Ce que je cherche à faire est de produire un formulaire node/edit comme dans access avec des sous tables directement accessibles depuis le formulaire.

    En gros depuis le formulaire de création de plan de cours, je veux pouvoir ajouter des thèmes, et pour chacun d'entre eux ajouter des contenus comme il est possible de le faire dans access.

    Je cherche un module ou une méthode qui permettrait cela avant de me jeter dans le code de drupal.

    L'équivalent access dont je parle est la situation suivante:
    Table A -> Table B - > Table C (chaque flèche représente une relation de 1 à N).
    En créant un formulaire sur table A et en ajoutant dans ce formulaire la table B, il est alors possible d'éditer les éléments de Table C directement depuis ce formulaire.


    Si vous avez des idées....

  2. #2
    Membre expérimenté
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 875
    Points : 1 394
    Points
    1 394
    Par défaut
    jé réponds à ma propre question.

    Après avoir essayé de multiples modules (field group, field group multiple, node reference autocreate,...) j'ai obtenu satisfaction avec field collection.


    Je crée une field collection se nommant Contenu de formation et composé de 2 champs:
    - 1 champ à valeur unique nommé thème
    - 1 champ à valeur multiple nommé contenu

    Ensuite dans le node type plan de cours j'ajoute cette field collection comme un champ à valeurs multiples. Un peu de css pour styliser tout ça et c'est bon.

    La conclusion c'est que la sophistication du système de champ de drupal m'a permis de m'affranchir d'une table dans mon modèle relationnel (au profit d'une table unique qui gère des collections de champs).

    Du coup je vasi attaquer le projet de migration sus cité

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 18
    Dernier message: 06/03/2016, 20h30
  2. [Débutant] Formulaire d'objets relationnels
    Par ThisIsMadness dans le forum ASP.NET MVC
    Réponses: 2
    Dernier message: 07/03/2014, 17h52
  3. [AC-2010] Formulaire - Jointure relationnelle entre trois tables
    Par arkham55 dans le forum IHM
    Réponses: 2
    Dernier message: 20/12/2012, 14h02
  4. Comment construire un formulaire relationnel?
    Par bulmish dans le forum Windows Forms
    Réponses: 5
    Dernier message: 18/01/2008, 10h39
  5. Desire faire un formulaire avec une BD relationnelle
    Par mosstu126 dans le forum Access
    Réponses: 6
    Dernier message: 05/01/2006, 14h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo