基本项目从ruby 1.8升级到ruby 2.5。
ISO-8859-1编码在页面上声明,在以前的ruby和rails版本中工作正常。
方法也写在应用程序控制器中。
before_action :set_charset
def set_charset
response.headers["Content-Type"] = "text/html; charset=ISO-8859-1"
end
应用程序布局的声明如下。
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
但是在ruby 2.5的javascript_tag处,它显示以下错误。
<%= javascript_include_tag "application" %>
Encoding::InvalidByteSequenceError
"\xA3" on UTF-8
在rails级别尝试了以下选项,但不起作用。
application.rb
config.encoding = "ISO-8859-1"
config.force_encoding = "UTF-8"
从应用程序中删除了所有旧的js文件。它开始运行。