[Rails] Performance de validates_inclusion_of - Version imprimable +- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org) +-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38) +--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51) +--- Sujet : [Rails] Performance de validates_inclusion_of (/showthread.php?tid=5773) |
[Rails] Performance de validates_inclusion_of - popayan - 27-10-2011 Bonjour, Une petite question : Posons d'abord le contexte : j'ai un champ city dans un model ainsi qu'une table "Cities". Le champ city doit impérative contenir une donnée présente dans la table "Cities" d'où le fait de vouloir utiliser le validates_inclusion_of. Sauf que ma table "Cities" a environ 35000 entrées! D'où la question, est-ce dangereux d'utiliser cette méthode avec "autant" de données. (Je mets "autant" entre guillemets parce que je ne sais si 36000 est un chiffre si important que ca pour ce genre de chose...) Merci d'avance! RE: [Rails] Performance de validates_inclusion_of - Sephi-Chan - 27-10-2011 Montre le code précis que tu utilises. Et dans une console, crée un nouvelle ressource qui a cette association et regarde la requête effectuée lorsque tu la sauvegarderas (puisque c'est là que sera effectuée la validation). RE: [Rails] Performance de validates_inclusion_of - niahoo - 27-10-2011 Tu modélises les communes de France ? RE: [Rails] Performance de validates_inclusion_of - popayan - 27-10-2011 Je n'ai pas encore fait la partie validation, juste la partie autocomplétion du champ, je finirais ca demain et je vous montre. Sinon oui, ce sont les communes de France RE: [Rails] Performance de validates_inclusion_of - Sephi-Chan - 27-10-2011 Pourquoi ne pas plutôt avoir une colonne city_id dans ton modèle plutôt qu'une chaîne de caractère (par définition moins fiable) ? Le validateur validates_inclusion_of est plus approprié pour les petites listes (homme/femme, true/false, rouge/vert/bleu, etc.). Là je pense que le plus efficace serait une validation manuelle.
En plus ça utilisera le même message d'erreur que si la validation foirait avec un validates_inclusion_of. RE: [Rails] Performance de validates_inclusion_of - popayan - 27-10-2011 La "city" est surtout là pour la déco et ne servira a rien (ou presque) ensuite... donc je me suis dis que lié des tables en plus était inutile. Sur ce que j'avais lu sur validates_inclusion_of, ça rejoint ce que tu dis (c'est pour ça que je posais la question ^^) et du coup, je vais me tourner vers cette méthode RE: [Rails] Performance de validates_inclusion_of - Sephi-Chan - 27-10-2011 Oui mais si tu as les villes stockées dans ta table Cities, autant les référencer par leur id plutôt que par leur nom. Ça ne coûte pas plus cher et c'est plus efficace. Si tu préfères malgré tout utiliser une chaîne :
|