sauvegarder un form dans plusieurs tables

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • sauvegarder un form dans plusieurs tables

    Bonjour,

    Je fais un composant type galerie d'images : une galerie -> plusieurs images

    donc une table galerie et une table galerie_images

    Quand je sauvegarde mon form je voudrais que la table gallery se mette à jour ainsi que la table galerie_images qui contient les images de la galerie (liée par l'id de la gallerie).

    Dois je créer un modele pour galerie_images?
    Surcharger la methode save() du modele galerie?

    Un petit exemple serait génial ou un petit tuto ...

    Merci d'avance

    Sylvain

  • #2
    Re : sauvegarder un form dans plusieurs tables

    2 modèles suffisent :

    Liste des galeries et fiche galerie...

    Gestion de la galerie sélectionnée dans la liste --> infos concernant la galerie avec un "param" montant le dossier images et te permettant un choix multiple parmi les images

    Ainsi tu n'as pas besoin d'une table galerie_images contenant la liste des images avec une clé pointant vers la galerie à laquelle elle appartient. Tout est stocké dans une seule table galeries
    Christophe
    http://www.webcrea.fr

    Commentaire


    • #3
      Re : sauvegarder un form dans plusieurs tables

      Merci webcrea pour cette reponse si rapide,

      En fait cette table gallerie_images ne contient pas que les images mais aussi leur description (texte html) et je souhaiterais aussi pouvoir selectionner des categories multiples pour chacune de ces images,
      cela ne sera pas trop "lourd" pour un seul champ param?

      Commentaire


      • #4
        Re : sauvegarder un form dans plusieurs tables

        Effectivement, si tu as des infos pour chaque image, il te faut une table pour les stocker.

        Je suppose que les infos pour l'image est unique (pas d'infos différentes pour une même image)

        Tu créées un field contenant la liste de clés vers les ID de galerie

        Pour sélectionner cette liste tu inclues ton field dans le xml

        voir http://docs.joomla.org/Standard_form...arameter_types

        Le principe est d'ajouter une classe qui va faire la requête vers la table galeries et te renvoyer le code html du sélecteur pour ce field

        quand tu déclares ton field dans le xml tu ajoutes type="categoriesmultiple" où categoriesmultiple est le nom de ton fichier à utiliser pour ce champ

        ton fieldset indique où aller chercher les classes
        <fieldset name="basic" addfieldpath="/modules/com_galeries/elements/"> par exemple

        n'oublies pas de filtrer en fonction de la valeur(liste d'ID séparée par une virgule par exemple) de ton field pour afficher le sélecteur avec les options sélectionnées. Ceci afin qu'il reprenne bien ta précédente sélection à l'ouverture de la fiche image
        Christophe
        http://www.webcrea.fr

        Commentaire

        Annonce

        Réduire
        Aucune annonce pour le moment.

        Partenaire de l'association

        Réduire

        Hébergeur Web PlanetHoster
        Travaille ...
        X