Cela pourrait en effet marcher en mettant en static.
On pourrait avoir la méthode getList dans la classe dao tout en
bénéficiant d'une variable static qui peut donc servir de cache a chaque
appel car il n'y a alors pas d'instanciation.
A tester.
En attendant, laisser la methode et le cache dans le
html.formxxx.class.php est une bonne maniere de faire une transition en
douceur.
Le 31/10/2011 14:50, Remy Younes a écrit :
Pourquoi ne pas faire de getList une method static?
2011/10/31 Régis Houssin <[email protected]
<mailto:[email protected]>>
oui mais si on instancie la classe dao dans la méthode select de
html.form.class afin d'appeler la méthode getList il n'y aura pas
de cache car la classe sera justement instanciée à chaque appel du
select non ?
Le 30/10/11 12:40, Laurent Destailleur a écrit :
Tu peux prendre exemple sur ce qui est fait pour la liste
déroulante des types de paiements:
select_types_paiements
Cela est dissocié en 2. La fonction qui renvoi le select formaté
et la fonction load_... qui charge le tableau.
Avantage: Tu peux appeler directement le load pour n'avoir que la
liste.
Avantage 2: Le résultat est mis en cache et donc plusieurs
affichage de la liste déroulante n'execute qu'une fois l'appel (à
reserver pour des listes déroulantes à longueur "controlé", comme
pour des dictionnaires)
Le défaut qu'il y a toujours est que la methode load dand
html.form.class.php contient la requete select alors qu'elle
devrait se baser sur une methode getList de la classe dao de
l'objet afin de ne plus avoir de code propre au la classe dao
dans une classe dédié à la présentation. Mais ceci peut se faire
dans une second temps. A terme, la fonction load_... devrait meme
etre déporté dans la methode getList et le cache mis au sein de
la methode getList plutot que html.form.class.php.
On 29/10/2011 22:16, Régis Houssin wrote:
Laurent,
j'aurais besoin d'avoir juste les array des listes déroulantes
qu'on trouve dans html.form.class par exemple mais sans les
listes déroulantes si tu vois ce que je veux dire.
ne pourrait on pas dissocier les requêtes sql de la construction
des listes déroulantes ?
Cordialement,
--
Régis Houssin
---------------------------------------------------------
Cap-Networks
30, quai de Verdun
71700 Tournus
FRANCE
VoIP:+33 1 83 62 40 03 <tel:%2B33%201%2083%2062%2040%2003>
GSM:+33 6 33 02 07 97 <tel:%2B33%206%2033%2002%2007%2097>
Web:http://www.cap-networks.com/
Email:[email protected]
<mailto:[email protected]>
Dolibarr developer:[email protected] <mailto:[email protected]>
Web Portal:http://www.dolibarr.fr/
SaaS offers:http://www.dolibox.fr/
Shop:http://www.dolistore.com/
Development platform:https://doliforge.org/
---------------------------------------------------------
Cordialement,
--
Régis Houssin
---------------------------------------------------------
Cap-Networks
30, quai de Verdun
71700 Tournus
FRANCE
VoIP:+33 1 83 62 40 03 <tel:%2B33%201%2083%2062%2040%2003>
GSM:+33 6 33 02 07 97 <tel:%2B33%206%2033%2002%2007%2097>
Web:http://www.cap-networks.com/
Email:[email protected]
<mailto:[email protected]>
Dolibarr developer:[email protected] <mailto:[email protected]>
Web Portal:http://www.dolibarr.fr/
SaaS offers:http://www.dolibox.fr/
Shop:http://www.dolistore.com/
Development platform:https://doliforge.org/
---------------------------------------------------------
_______________________________________________
Dolibarr-dev mailing list
[email protected] <mailto:[email protected]>
https://lists.nongnu.org/mailman/listinfo/dolibarr-dev
_______________________________________________
Dolibarr-dev mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/dolibarr-dev
--
Eldy (Laurent Destailleur).
---------------------------------------------------------------
EMail: [email protected]
Web: http://www.destailleur.fr
Dolibarr (Project leader): http://www.dolibarr.org
To make a donation for Dolibarr project via Paypal: [email protected]
AWStats (Author) : http://awstats.sourceforge.net
To make a donation for AWStats project via Paypal: [email protected]
AWBot (Author) : http://awbot.sourceforge.net
CVSChangeLogBuilder (Author) : http://cvschangelogb.sourceforge.net
_______________________________________________
Dolibarr-dev mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/dolibarr-dev