Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

set charset in rails application

I'm trying to setup my charset in a html view in a RoR application. I configured already the charset by meta equiv tag:
**meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" **

It didn't work, so i tried to change my .htaccess (its a RoR application running under apache) but here is my problem. Normally i could use the following statement: AddType 'text/html; charset=ISO-8859-1' html

But the problem is that, as everybody knows, RoR has no "file extension" and that breaks this .htaccess solution. Anybody knows another way to set a charset in a layout template or view ?

like image 351
VP. Avatar asked May 23 '09 07:05

VP.


2 Answers

Have your Rails application set the Content-type header, and then you won't need to worry about what Apache is doing.

response.headers['Content-type'] = 'text/html; charset=utf-8'

You may also want to add

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

to the page itself, so that if someone saves it to disk, it will load with the correct charset.

like image 160
cjs Avatar answered Oct 17 '22 17:10

cjs


I added a function like that, but that still not working i have ç ~ codes in my application.rhtml that are not working.

before_filter :configure_charsets 

# Configuring charset to UTF-8 
def configure_charsets 
   headers["Content-Type"] = "text/html; charset=UTF-8"     
end 

I added as well meta http-equiv html tag and a .htaccess parameter AddDefaultCharset UTF-8

That's still not working, any other tip?

like image 44
VP. Avatar answered Oct 17 '22 15:10

VP.