Pardon, je corrige, ensuite je voudrais faire :
def to_param
"#{id}-#{nom.normalize.gsub(/[^a-z1-9]+/i, '-')}"
end
Bien sur :)
Le 29/07/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> a écrit :
>
> 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.
> Je l'utilise pour générer des url propres en redéfinissant la méthode
> to_param
>
> Dois-je placer ce code pour l'utiliser partout dans Rails ?
>
> def self.normalize(str)
> n = str.chars.downcase.strip.to_s
> n.gsub!(/[àáâãäåāă]/, 'a')
> n.gsub!(/æ/, 'ae')
> n.gsub!(/[ďđ]/, 'd')
> n.gsub!(/[çćčĉċ]/, 'c')
> n.gsub!(/[èéêëēęěĕė]/, 'e')
> n.gsub!(/ƒ/, 'f')
> n.gsub!(/[ĝğġģ]/, 'g')
> n.gsub!(/[ĥħ]/, 'h')
> n.gsub!(/[ììíîïīĩĭ]/, 'i')
> n.gsub!(/[įıijĵ]/, 'j')
> n.gsub!(/[ķĸ]/, 'k')
> n.gsub!(/[łľĺļŀ]/, 'l')
> n.gsub!(/[ñńňņʼnŋ]/, 'n')
> n.gsub!(/[òóôõöøōőŏŏ]/, 'o')
> n.gsub!(/OE/, 'oe')
> n.gsub!(/ą/, 'q')
> n.gsub!(/[ŕřŗ]/, 'r')
> n.gsub!(/[śšşŝș]/, 's')
> n.gsub!(/[ťţŧț]/, 't')
> n.gsub!(/[ùúûüūůűŭũų]/, 'u')
> n.gsub!(/ŵ/, 'w')
> n.gsub!(/[ýÿŷ]/, 'y')
> n.gsub!(/[žżź]/, 'z')
> n.gsub!(/\s+/, ' ')
> n.gsub!(/[^\sa-z0-9_-]/, '')
> n
> end
>
> Ensuite, je voudrais faire :
> class XX < ActiveRecord::Base
> def to_param
> "#{id}-#{nom.gsub(/[^a-z1-9]+/i, '-')}"
> end
> end
>
> Merci par avance,
>
> Cordialement,
>
> Pierre.
>
--~--~---------~--~----~------------~-------~--~----~
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]
-~----------~----~----~----~------~----~------~--~---