2

我正在尝试在我的 rails 3 应用程序版本 1.9.3 中使用 javascript。当我包含此行时%= javascript_include_tag "application" %>,我收到以下错误:

Encoding::CompatibilityError in Products#index 

incompatible character encodings: ASCII-8BIT and UTF-8

Extracted source (around line #9):

6:<%= javascript_include_tag 'jquery-1.7.2.min.js','jquery-ui-1.8.21.custom.min.js' %>
7:<%= stylesheet_link_tag 'jquery-ui-1.8.21.custom.css' %>
8:<%= stylesheet_link_tag  "pro" %>
9:<%= javascript_include_tag "application" %>
10:<%= csrf_meta_tags %>
11:   </head>
4

1 回答 1

1

Ruby 1.9 在字符串编码方面确实很挑剔。

您必须确保在整个应用程序和数据库中使用 utf8 编码文件。

在这种情况下,我会查看“application.js”以查看它是否以 utf8 编码,以及它是否包含 utf8 中的任何“错误编码”字符。

您也可以尝试在 application.rb 中进行设置:

class Application < Rails::Application
  config.encoding = "utf-8"
  #Your conf ...


end

这在初始化之前的 environment.rb 中!称呼:

Encoding.default_external = Encoding::UTF_8
Encoding.default_internal = Encoding::UTF_8

我在升级 Rails 2 时遇到了类似的问题,这对我有帮助。

于 2012-07-27T14:54:05.467 回答