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 13 years ago

Closed 9 years ago

#237 closed new feature (fixed)

Implementer jPrefs

Reported by: laurentj Owned by:
Priority: normal Milestone: Jelix 1.4
Component: jelix:utils Version:
Severity: minor Keywords:
Cc: f.lonqueu.brochard+jelix-trac@… Blocked By:
Blocking: Documentation needed: no
Hosting Provider: Php version:

Description

Implémenter un système de stockage dynamiques de préférences/paramètres d'applis et de modules. voir http://developer.jelix.org/wiki/fr/drafts/preferences

Attachments (2)

jpref.diff (14.7 KB) - added by bastnic 13 years ago.
jpref.2.diff (16.6 KB) - added by bastnic 13 years ago.

Download all attachments as: .zip

Change History (20)

comment:1 Changed 13 years ago by laurentj

  • Type changed from bug to new feature

comment:2 Changed 13 years ago by laurentj

  • Component changed from jelix to jelix:utils
  • Milestone changed from Jelix 1.0 to Jelix 1.1

comment:3 Changed 13 years ago by laurentj

  • Summary changed from Implementer jParams to Implementer jPrefs

comment:4 Changed 13 years ago by laurentj

  • Documentation needed unset
  • Milestone changed from Jelix 1.1 beta 1 to Jelix 1.1 beta 2

comment:5 Changed 13 years ago by bastnic

  • Owner set to bastnic

comment:6 Changed 13 years ago by laurentj

Faudrait voir si on ne pourrait pas stocker les prefs aussi dans un fichier ini, qui serait le cache du contenu en base. Ainsi, en lecture, on lit juste le ini, ce qui est plus rapide, et lors d'une mise à jour on stocke dans la base, on regènere le .ini. À priori, les perfs en écriture ne sont pas critiques, on modifie rarement les prefs dans la vie d'une appli.

comment:7 Changed 13 years ago by bastnic

pas bête.

Mais comme on en a discuté avec Loic, pour l'instant je code quelque chose qui fonctionne (j'en ai besoin). On verra après les soucis d'implémentation. Et ça ne changera rien à l'utilisation...

Premier patch (pleinement fonctionnel) ce soir.

Et faudra que tu m'expliques ce que tu souhaites pour les groupes...

comment:8 Changed 13 years ago by bastnic

  • Documentation needed set
  • Status changed from new to assigned

Toute première version.

Manque de commentaire, de quelques fonctionnalités, de paramétrage des droits.

Dans mon utilisation, je n'ai besoin que de l'accès en lecture aux préférences, avec paramètres (et ce, sans restrictions). J'ajouterais le reste un peu plus tard.

Qu'en pensez-vous en l'état ?

Changed 13 years ago by bastnic

comment:9 Changed 13 years ago by laurentj

  • Documentation needed unset
  • à quoi sert cette table de ressource ? Tu as des exemples d'utilisations
  • est-ce vraiment utile d'avoir un système de driver ?

Il faut faire attention à une chose : tout comme les locales, les prefs peuvent être souvent très utilisés, il faut donc que ce soit trés performant.

comment:10 Changed 13 years ago by bastnic

Mes préférences ont une valeur par défaut. Mais mon appli est multi-domaine, et les admins de chaque domaine peuvent surchargé les préférences comme il le souhaite pour l'ensemble de son domaine. Ca m'est super utile.

Le driver c'est au cas où on veut que les préférences proviennent d'un fichier d'une base LDAP ou de tout ce qu'on veut. Mais on peut toujours changer ça.

Pour l'instant je ne fais pas d'optimisation mais c'est sûr qu'il faudra blinder. Comme dit précédemment ce n'est qu'un proof of concept et ça m'est utile. Donc pour l'instant faut que ça marche et c'est tout.

Tu en penses quoi ?

Changed 13 years ago by bastnic

comment:11 Changed 13 years ago by bastnic

Je l'utilise comme ça moi.

Ca m'est super pratique. Mais toujours pas de cache.

comment:12 Changed 12 years ago by laurentj

  • review set to review?

comment:13 Changed 12 years ago by laurentj

  • Milestone Jelix 1.1 beta 2 deleted

comment:14 Changed 11 years ago by laurentj

  • review changed from review? to review-

Pour l'histoire des ressources, ça alourdi le truc, et ça devient compliqué à implémenter quand on voudra avoir un backend nosql. Pour ton histoire de domaine, tu aurais très bien pu avoir des prefs pour chaque domaine : monmodule.domainname.foo, monmodule.domainname.bar, etc... Je ne pense pas que finalement ce soit vraiment utile ce paramètre ressource.

à part ça, l'architecture me plait bien.

comment:15 Changed 9 years ago by laurentj

  • Owner bastnic deleted
  • review review- deleted
  • Status changed from assigned to confirmed

comment:16 Changed 9 years ago by FlorianLB

  • Cc f.lonqueu.brochard+jelix-trac@… added

jPref dans un module dédié mis dans jelix-modules ou dans utils avec les dao dans le core module jelix ?

On garde l'archi avec driver de bastnic ?

comment:17 Changed 9 years ago by laurentj

Je propose nouvelles specs. Utilisons jKvDb. ça évitera de réinventer la roue. jPrefs n'est plus qu'un wrapper autour de jKvDbb. Il y a des choses cependant à discuter. RDV sur la mailing list

comment:18 Changed 9 years ago by laurentj

  • Milestone set to Jelix 1.4
  • Resolution set to fixed
  • Status changed from confirmed to closed
Note: See TracTickets for help on using tickets.