Hi, I’m pretty sure to have seen a new method ‘remove_accents’ in Rails
2.2 but I can’t find it again. Is it me or does this method exists for
good ?
Thanks
Hi, I’m pretty sure to have seen a new method ‘remove_accents’ in Rails
2.2 but I can’t find it again. Is it me or does this method exists for
good ?
Thanks
Hi Bob,
I don’t know about such a method, but I hope it exists. In the mean
time, I’ve tried one I found on this same forum (in French:
Remplacer les accents d'un enregistrement en utf8 - FR - Ruby-Forum). Unfortunately, it
doesn’t work when I run my application, but it works in irb! I suspect
it’s got to do with encoding…
def ApplicationHelper.remove_accents( str )
accents = { ['á','à ','â','ä','ã','Ã','Ä','Â','À'] => 'a',
['é','è','ê','ë','Ë','É','È','Ê'] => 'e',
['Ã','ì','î','ï','I','ÃŽ','ÃŒ'] => 'i',
['ó','ò','ô','ö','õ','Õ','Ö','Ô','Ò'] => 'o',
['Å“'] => 'oe',
['ß'] => 'ss',
['ú','ù','û','ü','U','Û','Ù'] => 'u'
}
accents.each do |ac,rep|
ac.each do |s|
str.gsub!(s, rep)
end
end
return str
end
I tried setting $KCODE=“UTF-8” or $KCODE=“ISO-8859-1” at the top of my
source code, as suggested by cwilliams (creator of RadRails:
http://forums.aptana.com/viewtopic.php?f=20&t=8234), but that doesn’t
solve my problem. If you get this working in a real application, please
let me know; I’m getting desparate!
Thanks,
Chris.
Here’s another solution:
http://www.techniconseils.ca/en/scripts-remove-accents-ruby.php
Unfortunately, I still have the same encoding problems, but hopefully
it’ll work for you. And don’t hesitate to get back to me if you think
you know what I’m doing wrong ![]()
Good luck,
Chris.
Bob,
Rails doesn’t have a specific method to remove diacritics. There are a
couple alternatives - I used the 1st one and it works really great:
+ http://snippets.dzone.com/posts/show/5609
+ http://github.com/thbar/diacritics_fu/tree/master
+ http://www.jroller.com/obie/tags/ruby
+ http://www.techniconseils.ca/en/scripts-remove-accents-ruby.php
Cheers, Sazima
On Feb 20, 7:24 am, Chris Gers32 [email protected]
I used the 1st one and it works really great:
+ http://snippets.dzone.com/posts/show/5609
I tried that, but I get the following error message:
NameError: uninitialized constant ActiveSupport::Multibyte::Handlers
I have Ruby 1.8.6 and Rails 2.2.2.
Thanks,
Chris.
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.
Sponsor our Newsletter | Privacy Policy | Terms of Service | Remote Ruby Jobs