Forums : Extensions

Aller à la discussion :  Plus récente Plus ancienne

Aller à la page :  1 2 3 4 5 6

# Re: Impossible d'exécuter des requêtes avec mozStorage

Envoyé par : Raphael

Date : 21/08/2006 18:50

Je me joins à Fabrice pour te remercier de tes feedbacks et de ton témoignage d'expérience avec SQLite... =)

Dans tes tests, tu fais du SQLite 2.7.6 ? SQLite 3 n'est-il pas censé être plus rapide ? C'est bien du 3 qu'utilise MozStorage non ?

Enfin bon, merci pour les astuces, je note soigneusement =)

# Re: Impossible d'exécuter des requêtes avec mozStorage

Envoyé par : thefab

Date : 21/08/2006 20:08

C'est bien du 3 qu'utilise MozStorage non ?

Oui, mozStorage c'est SQLite3, mais les conseils de jreeman restent valables.

# Re: Impossible d'exécuter des requêtes avec mozStorage

Envoyé par : Raphael

Date : 30/09/2006 12:01

J'uppe ce topic pour une question sur TexTree... A force d'étudier le code, je commence enfin à comprendre comment il marche lol.

Et je pensais qu'il utilisait Mozstorage, et que ce dernier permettait d'utiliser SQLite3 avec le système de Templates, mais d'après ce que je vois - et comprend - Textree gère en fait tout le truc en "manuel" : Requêtes manuelles à chaque fois, etc... et n'utilise pas le système de Templates. Est-ce j'ai raison ?

Je viens de relire une News sur le fait que FF 3.0 incluerait un nouveau moteur de template qui permettrait à autre chose que du RDF de l'utiliser, et notamment du SQLite3. Je pensais que c'était Mozstorage ce nouveau "connecteur".

J'aimerais donc juste avoir confirmation de ce que je pense : Mozstorage permet juste une connexion à une base SQLite3 et le système de template associé n'est pas encore sorti c'est ça ? Il me semblait avoir lu que ça sortirait avec XULRunner 1.9 non ? Et Textree utilise 1.9.a1, est-ce que la finale intègrera ce système de template pour SQLite3 ?

Enfin, pensez-vous qu'il est pertinent de ma part de commencer à coder mon appli. façon "manuelle" comme Textree ou bien attendre que le système de Template pour SQLite3 sorte ? Et dans ce cas, je pourrais me faire le main, en transformant mes données SQLite3 en RDF et je construirais quelques templates avec... Et le jour où les templates SQLite3 sortent, je n'aurais qu'à changer la source de mes données ?

Merci d'avance pour votre aide.

PS : Question totalement à part, en décortiquant le code de Textree, comme je ne maitrise pas bien le JS, je ne comprends pas ce que représente les bouts de codes similaires à :

$("taglist").removeItemAt(0);

Est-ce une manière plus rapide d'écrire :

document.getElementById('taglist').removeItemAt(0);

Oui ? non ? Si oui, doit-on déclarer ces "raccourcis" quelque part ou bien c'est automatique ?

# Re: Impossible d'exécuter des requêtes avec mozStorage

Envoyé par : laurentj

Date : 01/10/2006 23:17

Mozstorage permet juste une connexion à une base SQLite3 et le système de template associé n'est pas encore sorti c'est ça ?

Tout à fait. MozStorage n'est en fait rien d'autres qu'une api pour stocker/lire des données, et cela repose sur sqlite.

Et en effet, le connecteur sqlite pour les templates ne sera dispo que dans FF3 (peut-être)

Il me semblait avoir lu que ça sortirait avec XULRunner 1.9 non ?

FF3 et Xulrunner 1.9 sortiront à peu prés en même temps, et reposeront tous les deux sur Gecko 1.9, qui contiendra ce fameux moteur de template "extensible".

pensez-vous qu'il est pertinent de ma part de commencer à coder mon appli. façon "manuelle" comme Textree ou bien attendre que le système de Template pour SQLite3 sorte ?

vaut mieux que tu codes dés maintenant. Ce n'est même pas sûr que le connecteur sqlite pour les templates sera livré. Il n'existe rien encore là dessus dans les sources du trunk. (mais le nouveau moteur de template est là..)

doit-on déclarer ces "raccourcis" quelque part ou bien c'est automatique ?

il doit certainement y avoir une déclaration du type function $(id) quelque part dans les sources que tu as.

# Re: Impossible d'exécuter des requêtes avec mozStorage

Envoyé par : Raphael

Date : 02/10/2006 09:18

Pour la fonction $(id) tu as raison, je viens de la trouver dans prototype.js (d'ailleurs je ne sais pas si ce fichier énorme a été codé par MonsieurN ou bien si c'est le genre de librairies toute faite à inclure dans son programme pour accéder à certaines fonctions...)

Ok, donc tu penses que je devrais commencer à coder... Mais je m'interroge lourdement : Je sais que je peux tout coder manuellement en SQLite3 mais je ne suis pas sûr que ce soit pertinent, je m'explique :

  • En SQLite3 : A l'ouverture, je vais charger mes milliers d'enregistrements dans mon Tree. ensuite selon le choix des menulist pour mon tri automatique, je veux n'afficher que les cartes correspondant à leur critère : Il faut donc effacer les lignes présentes, et refaire une requête pour afficher les résultats dans ce même tri non ? Et ça, ça prend énormément de temps non ? Ou bien on peut appliquer des règles de masque dans un tree non créé à partir de RDF ?
  • Si je travaille avec RDF, il sera peut-être plus simple de gérer mes filtres consécutifs à l'aide de règles et de conditions il me semble, mais surtout, le chargement de mes milliers de lignes ne se fait qu'une seule fois non ? D'où une réactivité exemplaire ? Mais si je travaille avec RDF, il me faudrait un script de conversion SQLite3 > RDF... Que je saurais faire en PHP (en plus il y a un exemple dans le Wiki je crois) mais l'idéal serait que je réalise cette conversion en JS, est-ce possible avec ce langage ? Avec du document.write ou quelque chose comme ça ?

Voilà, en fait je suis quasiment prêt à attaquer le coeur du travail, mais ce sont les performances à l'usage qui me posent encors souci. J'ai peur qu'en travaillant des filtres pour des milliers d'enregistrements en SQLite3, il faille refaire des requêtes à chaque changement de mon filtre de recherche... Est-ce le cas ou bien peut-on appliquer de règles ou des masques sur le tree rempli ?

Merci.

# Re: Impossible d'exécuter des requêtes avec mozStorage

Envoyé par : jreeman

Date : 02/10/2006 10:05

Des milliers de lignes en sqlite ca devrait pas être trop lent je pense.

Il suffit pas de faire un petit test ? :)

# Re: Impossible d'exécuter des requêtes avec mozStorage

Envoyé par : Raphael

Date : 02/10/2006 11:13

C'est vrai, mais en fait la base de données est en cours de création en parallèle et ne comporte pour l'instant que quelques dizaines/centaines de lignes donc le résultat ne serait peut-être pas révélateur...

Le truc, c'est que mes filtres de recherche sont des menulist mais aussi un textbox pour le nom de la carte à chercher et comme je veux le faire en temps réel, ça suppose qu'à chaque frappe de touche, une fonction s'occupe d'effacer des milliers de lignes de mon tree, et de faire une requête sur d'autres milliers d'enregistrements, qu'il doit mettre dans le tri... et ce à chaque frappe... Me semble que ça fait beaucoup de choses à calculer ça non ? XD

C'est pour ça que je me demandais si une fois le Tree chargé une fois, il était possible de lui appliquer des conditions/rules/masques/filtres pour afficher ou cacher des lignes... sans être obligé de changer complètement la source du tree... ?

# Re: Impossible d'exécuter des requêtes avec mozStorage

Envoyé par : laurentj

Date : 02/10/2006 12:40

il me semble que dans un template, tu peux ajouter/modifier dynamiquement des rules...

# Re: Impossible d'exécuter des requêtes avec mozStorage

Envoyé par : Raphael

Date : 02/10/2006 13:01

Oui, il me semble l'avoir vu aussi... mais comme tu le dis, dans un template... Et a priori, si j'utilise du SQLite3, mon tree généré n'a pas de templates non ? La modif. dynamique de rules est a priori réservé à des templates, donc actuellement à du RDF ?

Imaginons que je remplisse mon tree, mais sans templates... Une fois rempli, je ne sais pas s'il est possible de modif des rules ou autres conditions pour masquer/afficher des résultats...

Car si ce n'est pas possible, cela supposerait qu'à chaque modif. de mon filtre de recherche, je doive tout effacer, et tout remplir après... ce qui à mon avis va ralentir considérablement le traitement des données, en comparaison d'un simple "masque/filtre".

# Re: Impossible d'exécuter des requêtes avec mozStorage

Envoyé par : laurentj

Date : 02/10/2006 13:23

Tu as trois moyens de remplir ton arbre, à partir des données que tu lirais via mozstorage :

  1. générer un rdf en javascript, faire un template, et bidouiller les rules pour modifier les critères dynamiquement
  2. ou utiliser un treeview
  3. ou générer directement des noeuds DOM treechildren, treerow &cie

Sachant que je pense que la solution du treeview sera plus performante, et ce qui est sûr, la troisième étant la plus gourmande (et affichage trés lent si tu as beaucoup de données)

Aller à la page :  1 2 3 4 5 6

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.