Lors de création d'un article, quelles tables sont modifiées

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

  • [RÉGLÉ] Lors de création d'un article, quelles tables sont modifiées

    Bonjour,
    Je souhaite connaitre la liste de toutes les tables modifiées dans la base lors de la création d'un article Joomla.
    Pouvez-vous compléter ma recherche:
    • _content
    • _assets
    Dernière édition par Alain_56 à 09/04/2020, 17h37

  • #2
    Hello.

    Peux-tu préciser dans quel but ?

    Car déjà : la table #__assets est globale au framework, et ne sert pas qu'à com_content.

    Selon les options (comme les customfields qui eux aussi ont des tables globales et communes aux autres composants) il peut effectivement en avoir d'autres.
    A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
    Rejoignez le Joomla Users Groupe Alsace...
    roland_d_alsace va-t-il devenir roland_du_grand_est ?

    Commentaire


    • #3
      Bonjour roland_d_alsace
      Merci pour ta demande de complément d'info, il manquait l'essentiel.
      J'utilise depuis peu de temps le composant Seblod.
      Pour transférer des données dans les tables de la base via des requêtes SQL, je procède à des tests pour constater les effets.
      A ce jour j'ai identifié que les données devaient être écrites dans les tables suivantes pour ne pas générer d'erreur.
      • #_content
      • #_assets
      • #_cck_store_form_monFormulaire
      • #_cck_core
      Sais-tu si d'autres tables sont impactées par l'écriture d'un article "en mode normal"
      Alain

      Commentaire


      • #4
        Pour générer automatiquement un article je ne procède pas en écriture directe dans les tables, cela me parait un peu "casse gueule", car même si tu arrives à maitriser le truc dans une version x de Joomla rien ne t'assure que cela ne changera pas lors d'une maj.

        De plus pourquoi réinventer quelque chose qui existe déjà...

        Je fais appel au model de com_content, et du coup je n'ai pas à gérer la subtilité de la table #__asset (par exemple), je laisse faire les méthodes de com_content et ainsi je suis sûr que tout est fait conformément à la version courante de Joomla.
        Mais aussi je suis sûr que les plugins sont appelés, les mails envoyés, etc...

        Mais je n'utilise pas de CCK, je développe mes propres composants quand j'ai un besoin spécifique.

        Je ne saurai donc pas t'aider pour charger un model et appeler une méthode de ce model sous Seblod.

        Mais peut-être qu'il y a une formule de prévue pour générer un article, cela me semblerait utile dans un CCK.
        Il n'y a pas un forum Seblod pour poser la question à l'équipe Seblod (ils sont réactif en général) ?
        Dernière édition par roland_d_alsace à 10/04/2020, 11h34
        A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
        Rejoignez le Joomla Users Groupe Alsace...
        roland_d_alsace va-t-il devenir roland_du_grand_est ?

        Commentaire


        • #5
          Tes remarques sont pertinentes de A à Z !
          Ma réflexion sur le transfert de données concerne environ 6000 articles existants dans un autre format, d’où mon intérêt pour la compréhension de l'enregistrement d'un article dans la base.
          Le forum Seblod n'est pas "très actif"...malheureusement.

          Code HTML:
          Je fais appel au model de com_content
          Qu'est-ce que le modèle de com_content ?
          Dernière édition par Alain_56 à 10/04/2020, 11h42

          Commentaire


          • #6
            Envoyé par Alain_56 Voir le message
            T

            Code HTML:
            Je fais appel au model de com_content
            Qu'est-ce que le modèle de com_content ?
            Ne connaissant pas tes notions de développement php, voici une tentative d'explication :

            C'est la "logique" de programmation MVC (Model/Vue/Controleur)

            Le model d'une vue effectue les actions de mise à jour de la base de donnée et de préparation des informations à afficher, indépendamment de la présentation de l'affichage qui est du ressort du template de vue.

            Pour une vue qui permet d’insérer ou de modifier un élément dans la base de donnée, on y trouve dans la logique de Joomla dans son model, une méthode "store" (méthode qui est lancé par le contrôleur -le maitre d’œuvre qui lance les actions-).

            Cette méthode store du model prend les informations données (en général par l'internaute) et les enregistre en base de données en faisant toutes les actions nécessaires (contrôles, mise à jours des différentes tables, lancement de plugins, etc...).

            Là on parle de com_content, le composant de publication d'articles de Joomla, plus particulièrement de la vue "edit" qui permet de créer ou modifier un article, et de la méthode store qui se trouve dans la classe du model, définie dans /components/com_content/model/edit.php et/ou dans une des classes mères dont elle hérite.

            Mais comme dit c'est de la programmation, il faut avoir des notion de POO (programmation objet) et connaitre le MVC de Joomla (système de programmation "moderne" qui permet de séparer essentiellement la présentation du rendu, des opérations dans la base de données, afin que les stylistes n'aient pas (trop) à se préoccuper de programmation.

            C'est ce système MVC, qui permet aussi de pouvoir changer de template en un clic (ou presque) et de faire des surcharges (override de template de vues, de layouts, etc...).
            Dernière édition par roland_d_alsace à 10/04/2020, 12h11
            A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
            Rejoignez le Joomla Users Groupe Alsace...
            roland_d_alsace va-t-il devenir roland_du_grand_est ?

            Commentaire


            • #7
              Bonjour

              Il me semble que le plus exhaustif serait de faire un dump de ta base de données au format SQL. Sauver le fichier quelque part.
              Faire ton opération de création d'article puis un nouveau dump et alors comparer les deux fichiers .sql.

              Probablement fastidieux mais si c'est vraiment important pour toi d'être certain alors c'est la manière la plus exhaustive.

              Bonne journée.
              Christophe (cavo789)
              Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
              Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

              Commentaire


              • #8
                Envoyé par Alain_56 Voir le message
                Tes remarques sont pertinentes de A à Z !
                Ma réflexion sur le transfert de données concerne environ 6000 articles existants dans un autre format, ...
                Donc tu veux récupérer tes articles de com_content (gestionnaire d'articles de Joomla) pour les reprendre dans un autre composant (Seblod ?), ou l'inverse (te dispenser de Seblod ?), ou importer des articles d'un autre CMS que Joomla dans Joomla + Seblod ?

                Je pense que pour pouvoir t'aider au mieux, il faudrait être un peu plus précis sur ton besoin.


                A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
                Rejoignez le Joomla Users Groupe Alsace...
                roland_d_alsace va-t-il devenir roland_du_grand_est ?

                Commentaire


                • #9
                  Envoyé par roland_d_alsace Voir le message
                  Donc tu veux récupérer tes articles de com_content (gestionnaire d'articles de Joomla) pour les reprendre dans un autre composant (Seblod ?), ou l'inverse (te dispenser de Seblod ?), ou importer des articles d'un autre CMS que Joomla dans Joomla + Seblod ?
                  Je pense que pour pouvoir t'aider au mieux, il faudrait être un peu plus précis sur ton besoin.
                  J'utilise Joomla + le composant Seblod
                  Actuellement les données sont dans une base Microsoft Access.
                  Je ventile le contenu des tables Access avec des requêtes SQL dans les tables Joomla et celles de Seblod (CCK_)

                  Commentaire


                  • #10
                    Envoyé par cavo789 Voir le message
                    Bonjour
                    Il me semble que le plus exhaustif serait de faire un dump de ta base de données au format SQL. Sauver le fichier quelque part.
                    Faire ton opération de création d'article puis un nouveau dump et alors comparer les deux fichiers .sql.
                    Probablement fastidieux mais si c'est vraiment important pour toi d'être certain alors c'est la manière la plus exhaustive.
                    Bonne journée.
                    Je vais faire une installation Joomla + Seblod vierge de données pour tester ta méthode
                    Dernière édition par Alain_56 à 10/04/2020, 17h13

                    Commentaire


                    • #11
                      Envoyé par Alain_56 Voir le message
                      J'utilise Joomla + le composant Seblod
                      Actuellement les données sont dans une base Microsoft Access.
                      Je ventile le contenu des tables Access avec des requêtes SQL dans les tables Joomla et celles de Seblod (CCK_)
                      OK, peut-être que d'autres pourront t'aider connaissant ceci.

                      Il me semble qu'il existe des composants permettant l'import d'articles à partir de csv, mais je n'ai jamais utilisé.
                      Regarde ces discussions par exemple :Mais tu devrais en trouver d'autre.

                      De mon côté, dans un tel cas j'ai toujours écrit mes "moulinettes".

                      Je pense que la première étape (c'est ce que j'ai fait en intégrant des articles d'autres CMS dans Joomla est déjà de créer la table des catégories, avec une table de mappage (identifiant catégories Access -> identifiant catégories Joomla).

                      Autre question pourquoi tu as besoin de Seblod dans cet import ?
                      Dernière édition par roland_d_alsace à 10/04/2020, 17h55
                      A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
                      Rejoignez le Joomla Users Groupe Alsace...
                      roland_d_alsace va-t-il devenir roland_du_grand_est ?

                      Commentaire


                      • #12
                        Envoyé par roland_d_alsace Voir le message
                        (...) Autre question pourquoi tu as besoin de Seblod dans cet import ?
                        J'ai besoin d'un menu avec des listes de choix pour filtrer en cascade des données.
                        N'hésite pas à m'indiquer s'il existe des alternatives à Seblod.

                        Commentaire


                        • #13
                          Envoyé par Alain_56 Voir le message
                          J'ai besoin d'un menu avec des listes de choix pour filtrer en cascade des données.
                          N'hésite pas à m'indiquer s'il existe des alternatives à Seblod.
                          Sur quoi s'appliquent ces filtres, sur le contenu de l'article ou sur des champs particuliers de ta DB accès (dont les valeurs ne seraient donc pas dans le contenu).

                          Ne serait-il pas + simple de procéder par étapes, d'abord importer tes catégories, puis tes articles, puis voir pour les filtres.
                          A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
                          Rejoignez le Joomla Users Groupe Alsace...
                          roland_d_alsace va-t-il devenir roland_du_grand_est ?

                          Commentaire


                          • #14
                            Bonjour Roland,
                            Sur quoi s'appliquent ces filtres, sur le contenu de l'article ou sur des champs particuliers de ta DB Access
                            Lors du transfert des données Access, exemple : table individu
                            le contenu est reparti dans deux tables :
                            • #__content
                            • #__cck_store_form_individu
                            #__content : le titre est la concaténation nom-prénom, les autres champs de la table enregistrent les infos de l'article (date de création, catégorie...)
                            #__cck_store_form_individu : enregistre les données propre à l'individu (nom, prénom, date de naissance, date de décès...)

                            Seblod créé la table #__cck_store_form_individu, elle est liée à #__content
                            Les filtres s'applique sur la table #__cck_store_form_individu

                            Ne serait-il pas + simple de procéder par étapes, d'abord importer tes catégories, puis tes articles, puis voir pour les filtres.
                            J'ai procédé à peu près comme tu le dit.

                            Commentaire


                            • #15
                              Bonjour,
                              Envoyé par cavo789 Voir le message
                              Il me semble que le plus exhaustif serait de faire un dump de ta base de données au format SQL. Sauver le fichier quelque part.
                              Faire ton opération de création d'article puis un nouveau dump et alors comparer les deux fichiers .sql.
                              Probablement fastidieux mais si c'est vraiment important pour toi d'être certain alors c'est la manière la plus exhaustive.
                              J'ai procédé aux multiples opérations : installation et paramétrage de Joomla et Seblod, création de menu...catégorie.
                              A chaque étape, la base SQL était enregistrée.
                              Avec le module Compare de Notepad++, je constate les changements.

                              Je liste ci-dessous, les tables modifiées lors de la rédaction d'un article, cela servira peut-être à quelqu’un(e).

                              Joomla
                              #__action_logs
                              #__session
                              #__ucm_history
                              #__action_logs
                              #__assets
                              #__content

                              Seblod
                              #__cck_core
                              #__cck_core_fields
                              #__cck_store_form_monFormulaire

                              Commentaire

                              Annonce

                              Réduire
                              Aucune annonce pour le moment.

                              Partenaire de l'association

                              Réduire

                              Hébergeur Web PlanetHoster
                              Travaille ...
                              X