developer.jelix.org is not used any more and exists only for history. Post new tickets on the Github account.
developer.jelix.org n'est plus utilisée, et existe uniquement pour son historique. Postez les nouveaux tickets sur le compte github.

Opened 10 years ago

Closed 10 years ago

Last modified 10 years ago

#1173 closed new feature (wontfix)

AbstractJdao

Reported by: flav Owned by: laurentj
Priority: normal Milestone:
Component: jelix Version:
Severity: normal Keywords:
Cc: Blocked By:
Blocking: Documentation needed: no
Hosting Provider: Php version:

Description

Objectif : gagner un niveau d'abstraction sur la définition des objets d'un cms :

Exemple : Un XML définissant les objets en leur attribuant des fonctionnalités. Chaque fonctionnalité correspondrait à un module, et chacun de ces modules ajouterait dans une global tableau l'ensemble des colonnes, des jointures, et des méthodes requises.

Sous-Exemple : cms_objet.xml liste les fonctionnalités des brèves des articles et des forums.

Ces objets sont abstraits et ne sont définis par aucun DAO. Il pourrait très bien ne pas exister, le monde continuerait de tourner. On doit pouvoir les supprimer/modifier/ajouter par la simple édition du cms_objets.xml.

A priori aucune proposition de modification du core de jelix, puisqu'il s'agit d'une conception très particulière d'application (pas généraliste).

Cependant ce XML doit aboutir à un objet compilé pour le cache. Inconcevable en effet de régénérer les classes à chaque fois. Il'y a donc besoin d'un compilateur qui, à partir d'une array est capable de me fournir des classes d'E/S sur BD, et stockant le résultat dans un fichier 'cache' dont le nommage tient compte du contexte. Or c'est exactement ce que fait jDAO D'où ma prise de tête pour ne pas faire un copier-coller du code. Ce serait dommage.

En fait je crois que le plus simple, et le plus souple serait une fonction du genre :

AbstractJdao($context_id, $definition)

  • Où $definition serait l'équivalent d'un DAO mais sous forme d'array.
  • Et $context_id permettrait le nommage du fichier pour le cache. Exemple : 'article'.

Mais ce contexte peut aussi tenir compte du module afin de pouvoir être appelé en dehors de celui ci. On pourrait alors inventer un nouveau type de selecteur "AbstractJdao?" sous la forme 'module~context_id'?

Au final, on aurait plutôt :

AbstractJdao($selector, $definition)

à ajouter dans le core de jelix ?

Change History (2)

comment:1 Changed 10 years ago by laurentj

  • Component changed from jelix:core to jelix
  • Resolution set to wontfix
  • Status changed from new to closed
  • Version trunk deleted

Désolé, mais je ne comprend rien à ce que tu proposes, et je ne vois pas le rapport avec jelix/core. Il est préférable de discuter de nouveaux concepts dans le forum plutôt que d'ouvrir un ticket. le bug tracker est réservé pour lister les taches à faire, lister les bugs, et non pas à disserter sur de nouveaux concepts (surtout si c'est encore flou). Pour ça il y a le wiki developer ou le forum.

Je te propose donc de continuer à discuter de ça dans le forum.

comment:2 Changed 10 years ago by foxmask

  • Documentation needed unset
Note: See TracTickets for help on using tickets.