Forum CMS Made Simple Francophone

Aide francophone sur CMS Made Simple

Vous n'êtes pas identifié(e).

Annonce

ATTENTION

  • Prenez le temps de rechercher si quelqu'un n'a pas déjà proposé une solution à votre problème. Sur le forum français et sur le wiki
  • Pensez à mettre à jour votre version de CMS Made Simple. Nous ne faisons de support que sur LA dernière version de CMS Made Simple.
  • Renseignez impérativement le formulaire de nouveau message de manière la plus complète que possible. Dans votre CMS utiliser le menu Administration du site/Informations du système en haut Vue au format texte. Ces informations demandées nous permettent de mieux vous aider
  • Ajoutez [Résolu] au début du titre de votre 1er message lorsqu'une solution a été trouvée.

#1 23/01/2012 18:02:40

airelibre
Administrateur
Lieu : Alsace
Inscription : 01/12/2009
Messages : 1 187
Site Web

Ajouter des définitions de champs aux modules ?

Bonjour à tous,

Je cherche une manière d'ajouter simplement des définitions de champs à mon module EventsManager (gestion d'évènements en tous genres). Comme pour le module News ou encore les différents modules de Calguy.

Après avoir étudié le code de ces modules, il semble que ce soit fait "à la main" à chaque fois avec une table "fielddefs" et une table "fieldvals".

Aussi, je me demandais si l'un d'entre vous avait connaissance d'un module qui permettrait d'étendre les possibilités d'autres modules avec l'ajout de définitions de champs ? J'ai bien testé ModuleXtender mais rien qui ressemble à cela...

Sinon, et à mon avis après les recherches c'est ce que je vais devoir faire, que pensez-vous d'un module qui permettrait justement aux développeurs de gérer facilement leurs définitions de champs ?

L'idée serait de proposer des classes qui pourraient être intégrées ou étendues (extends) dans d'autres modules. Ceci offrirait des fonctions en plus pour chaque module afin de gérer ces définitions de champs ainsi que leurs contenus.

L'avantage d'une telle méthode serait qu'en un seul et même lieu on peut ajouter des types de champs, voire même des modes de fonctionnement - Par exemple, créer un ensemble de champs "Localisation" qui pourrait regrouper Lat/Long et adresse pour CGGoogleMaps - Et avec un affichage en conséquence sur la page d'édition de l'item du module concerné.

Vous en pensez quoi ? Peut-être que cela existe déjà, mais dans ce cas je ne l'ai pas trouvé...

Merci pour vos avis de développeurs wink

Hors ligne

#2 24/01/2012 17:07:40

Eric11
Membre
Lieu : Carcassonne
Inscription : 09/04/2011
Messages : 157
Site Web

Re : Ajouter des définitions de champs aux modules ?

Perso je n'ai pas connaissance d'un tel module, par contre il y'a Listit2 qui fonctionne comme cela (si j'ai bien compris ton besoin), il permet de définir des champs et les types, peut être pourrais tu t'en inspirer.

Personellement, je définis cela dans mes class, une variable public reprennant les noms des colonnes et les propriétés type, html et cie, comme sous Zend. Ensuite j'ai une class _core qui interprète tout ça.


EricFreelance - Design, intégration et développement de sites internet.

Hors ligne

#3 24/01/2012 17:12:12

airelibre
Administrateur
Lieu : Alsace
Inscription : 01/12/2009
Messages : 1 187
Site Web

Re : Ajouter des définitions de champs aux modules ?

Merci Eric11 - Je vais regarder Listit pour voir ce que c'est !

Hors ligne

#4 24/01/2012 17:23:13

Eric11
Membre
Lieu : Carcassonne
Inscription : 09/04/2011
Messages : 157
Site Web

Re : Ajouter des définitions de champs aux modules ?

Listit est pas mal foutu (soucis juste pour les langues mais facilement corrigeable) il permet de se développer rapidement un petit module personnel, on l'a utilisé avec Romain et on l'a trouvé bien pratique. Moi j'ai regardé le code (et oui, comme celui de ton module Event), j'ai trouvé des trucs interessant.


EricFreelance - Design, intégration et développement de sites internet.

Hors ligne

#5 24/01/2012 17:28:07

airelibre
Administrateur
Lieu : Alsace
Inscription : 01/12/2009
Messages : 1 187
Site Web

Re : Ajouter des définitions de champs aux modules ?

Merci wink

Hors ligne

#6 24/01/2012 21:33:08

bess
Administrateur
Lieu : Rennes
Inscription : 16/12/2008
Messages : 6 094
Site Web

Re : Ajouter des définitions de champs aux modules ?

Sinon, et à mon avis après les recherches c'est ce que je vais devoir faire, que pensez-vous d'un module qui permettrait justement aux développeurs de gérer facilement leurs définitions de champs ?

L'idée serait de proposer des classes qui pourraient être intégrées ou étendues (extends) dans d'autres modules. Ceci offrirait des fonctions en plus pour chaque module afin de gérer ces définitions de champs ainsi que leurs contenus.

mon framework se base justement sur ce genre de déclaratif. Autant dire que le travail est déjà pré-maché

On peut étudier le fait de faire un module dédié à cela mais par expérience (avec mon recul sur le sujet) ce sera pas simple de prévoir le champs des possibles hmm

Hors ligne

#7 25/01/2012 09:14:44

airelibre
Administrateur
Lieu : Alsace
Inscription : 01/12/2009
Messages : 1 187
Site Web

Re : Ajouter des définitions de champs aux modules ?

Merci Bess pour ta réponse - De quel framework parles-tu ? C'est un framework maison ?

Je dois encore regarder ListIt, mais si je suis amené à me lancer dans le développement d'un module de ce genre, c'est sûr que y'a du taff. L'idée serait de proposer un "Core" avec quelques champs, qui serait ensuite extensible avec de nouvelles classes (1 classe = 1 type de champ). Ainsi, on pourrait imaginer que n'importe quel développeur de module puis ajouter une classe de champ dans un dossier spécifique de son module, qui serait alors repris dans ce même module.

Y'a du boulot, mais si ca fonctionne, ca serait un gros gain de temps pour tous les autres modules, et une souplesse intéressante pour la gestion des contenus de ces modules.

Hors ligne

#8 25/01/2012 10:48:13

bess
Administrateur
Lieu : Rennes
Inscription : 16/12/2008
Messages : 6 094
Site Web

Re : Ajouter des définitions de champs aux modules ?

De quel framework parles-tu ? C'est un framework maison ?

Mmmfs, : http://mmmfs.furie.be

et je fonctionne avec du déclaratif,

Une table = X champs

à chaque champs je lui déclare un "HTMLField" correspondant

et j'utilise les fonctions de cette classe pour tout générer : le backoffice, le front-office et tout le reste.

Je présence justement ce framework durant le prochain GeekMoot smile il n'est pas en open-source pour le moment.

Hors ligne

Pied de page des forums