Carnet Wiki

Vertebres

Version 17 — il y a 2 semaines YannX

<blockquote class="spip">

Vertebres est une extension réservée aux Webmestres, intégrée dans SPIP, qui permet l’accès automatisé à toute table gérée dans la base de données.

</blockquote>

Selon la version de SPIP, on y accède (si l’auteur connecté a les droits WebMestre) :
-  en SPIP 2 : une page spécifique de l’interface publique /?page=table:{articles} (pour toute table..)
-  en SPIP 3 : en saisissant dans l’interface privée /?exec=vertebres (cliquer sur la table voulue).

L’introduction dans SPIP 2

En SPIP 2.x, pour permettre d’explorer rapidement les tables d’une base [1], un mécanisme de création automatique d’un squelette se déclenche lorsque la valeur du paramètre d’URL page est de la forme table:la table.

Ce vertébreur visualise le contenu de la table selon plusieurs modes de navigation, et permet de sauvegarder le squelette créé (ce squelette est stocké dans ./tmp/ ).

Il est ainsi facile de développer un utilitaire de gestion de bases de données avec SPIP, donc éventuellement multi-serveurs (SPIP3 intègre le menu de configuration de fichiers de connexion à des bases annexes).

Pour des raisons de confidentialité, ce mécanisme n’est accessible qu’au webmestre principal mais peut être plus ouvert en surchargeant la fonction autoriser_webmestre.

Précisions apportées dans Les Bases de données en SPIP : les administrateurs du site bénéficient d’un traitement spécial échafaudage automatique ( scaffolding )  : lorsqu’ils donnent à leur navigateur l’URL de leur site suivi de ?page=table:tabletable est le nom d’une table de la base, SPIP va automatiquement construire un squelette spécifique à cette table, permettant d’en examiner le contenu avec une grande ergonomie. Le squelette produit par styliser est affichable à travers le lien squelette en bas de page. Il est possible alors de le copier à la souris (cliquer en haut de colonne pour cacher la numérotation des lignes) et de l’améliorer en le travaillant sous un éditeur approprié.

À noter qu’avec cette production automatique, SPIP pourrait, à la limite, fonctionner sans aucun squelette prédéfini.

Utilisation en consultation sous SPIP 3

En SPIP 3.o, la page ./ecrire/?exec=vertebres [2] liste les différentes tables de SPIP [3]. Un clic sur le nom de l’une d’elles permet d’en afficher le contenu. Chaque colonne dispose à son sommet d’une icône de loupe. En cliquant dessus, on a accès à un champ de type input. Ce champ permet de filtrer les entrées de la table et d’afficher toutes celles correspondant à la valeur entrée.

Plus besoin de PhpMyAdmin pour Afficher le contenu d’une table
un appel de l’url ?page=table:nom_de_la_table depuis l’espace public affichera sous forme de tableau le contenu de la table nommée.
par exemple : ?page=table:articles pour la table spip_articles [4].

La première ligne de ce tableau liste les champs de la table dans l’ordre alphabétique (attention : ne pas confondre «  » et « id_... ») ; un clic sur l’un de ces champs ordonnant les résultats (ascendant/descendant).

La deuxième ligne permet d’effectuer une recherche filtrante sur une valeur spécifique d’un champ.

L’ensemble des données est affiché en mode paginé, par groupe de 10 résultats.

Exemple de visualisation d'une table SPIP

À noter : Cette fonction permettant d’afficher l’intégralité des données de toutes les tables de la base de données n’est utilisable que par un webmestre loggé.

Mise-à-Jour

Non, cela n’est pas prévu pour... ;) Voyez phpMyAdmin ou Adminer.

Declarations complémentaires / jointures ?


Un peu d’histoire :

-  Tout d’abord vous aurez noté que :

  • vertebres a été officiellement introduit en SPIP 2 : ?page=table:nom_de_la_table en SPIP
  • en SPIP 3, Vertebrer disparait depuis le public <3.0>http://www.spip.net/fr_article4453.html#afficher]_table .
    En SPIP3 c’est par ici : /ecrire/?exec=vertebres
    -  liens de filiation eventuelles ? avec
  • TableData

TableData est un plugin compatible SPIP 2.0 jusqu’à SPIP 3.0 permettant de lire et d’éditer le contenu des tables de SPIP.

  • Saisies

Et puis, plus complet : installez phpMyAdmin s’il n’est aps déja accessible chez votre hébergeur,
ou bien.....
plus simple,
mais aussi
plus puissant (plus de bases de données) :
voyez le plugin Adminer