definir charset na aplicação rails

votos
8

Eu estou tentando configurar meu charset em uma exibição de html em um aplicativo de RoR. Já configurou o charset por meta tag equiv:
** meta http-equiv = Content-Type content = text / html; charset = iso-8859-1 **

Não funcionou, então eu tentei mudar minha .htaccess (sua uma aplicação RoR executando sob o Apache), mas aqui é o meu problema. Normalmente eu poderia usar a seguinte declaração: AddType 'text / html; charset = ISO-8859-1' html

Mas o problema é que, como todos sabem, RoR não tem extensão de arquivo e que quebra esta solução .htaccess. Qualquer um sabe outra maneira de definir um conjunto de caracteres em um modelo de layout ou vista?

Publicado 23/05/2009 em 08:50
fonte usuário
Em outras línguas...                            


3 respostas

votos
13

Ter sua aplicação Rails definir o Content-typecabeçalho, e então você não vai precisar se preocupar com o Apache está fazendo.

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

Você também pode querer adicionar

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

para a própria página, de modo que se alguém salva em disco, ele irá carregar com o charset correto.

Respondeu 23/05/2009 em 11:21
fonte usuário

votos
2

Eu adicionei uma função como essa, mas isso ainda não está funcionando eu tenho C a códigos na minha application.rhtml que não estão funcionando.

before_filter :configure_charsets 

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

Eu adicionado como bem meta http-equiv etiqueta de HTML e um parâmetro AddDefaultCharset .htaccess UTF-8

Isso ainda não está funcionando, qualquer outra ponta?

Respondeu 23/05/2009 em 13:36
fonte usuário

votos
0

Basta definir: encoding => 'utf-8' após o nome de modelo como este:

respond_to do |f|
  f.pdf do
    render :pdf => 'path_to_template_file', :encoding => 'utf-8'
  end
end
Respondeu 16/09/2013 em 17:47
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more