Eric, merci beaucoup pour ses précisions.
J'ai pas encore les réflexes d'une programmation 100% orientée objet.
J'avais pas pensé à étendre la classe String ;)
On 30 juil, 13:22, "Eric Daspet" <[EMAIL PROTECTED]> wrote:
> On 7/29/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>
> > Bonjour à tous pour mon premier message sur cette liste, étant un
> > nouvel utilisation (et déjà fan) de RoR.
>
> > Je voudrais partager une méthode qui permet de convertir les accents
> > en caractères correspondants non accentués.
>
> J'ai une fonction similaire dans mes plugins. Attention toutefois, ta
> fonction ne prend pas en compte les majuscules accentuées (le downcase ne
> fonctionne que pour l'ascii de base donc ta majuscule accentuée restera
> telle quelle). Il te faudrait ajouter ça.
> Si tu te contentes du français je te propose aussi d'épurer tes expressions.
> Plus tu en ajoutes plus ça prendra de temps. Si tu veux faire du dynamique
> avec to_param comme je le lis dans le fil de discussion, ta normalisation
> prendra effet plusieurs fois par page. Il vaudrait mieux ne faire que
> l'utile.
>
> Attention aussi à la méthode iconv. Elle est beaucoup plus rapide, beaucoup
> plus efficace, mais suivant les systèmes, le é peut donner soit e soit e'
> (avec l'apostrophe juste après). Perso dans ma fonction similaire j'ai
> d'abord utilisé iconv, puis j'ai mis ce qui suit (ma méthode s'appelle
> "to_ascii") :
>
> def to_ascii
> Iconv.new('ASCII//TRANSLIT', 'UTF-8').iconv(self)
> end
> if "é".to_ascii != "e"
> def to_ascii
> # ... remplacements avec gsub
> end
> end
>
> Perso j'ai ajouté ça directement à String vu que je l'utilise à plusieurs
> endroits.
>
>
>
> > Dois-je placer ce code pour l'utiliser partout dans Rails ?
>
> Logiquement tu fais un plugin. Dans ton répertoire /vendor/plugins tu fais
> un nouveau répertoire avec un init.rb pour charger tout ça.
> Après au choix, où tu fais un module qui étendra ton modèle, ou tu étend ta
> classe String (suivant que tu veux utiliser ça juste pour les urls de rails
> ou de manière plus générique)
>
> --
> Éric Daspethttp://eric.daspet.name/
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse [EMAIL PROTECTED]
-~----------~----~----~----~------~----~------~--~---