gpt4 book ai didi

ruby-on-rails - 当我需要 UTF-8 时,Rails 应用程序一直以 ASCII-8BIT 生成 View ?

转载 作者:数据小太阳 更新时间:2023-10-29 07:40:11 24 4
gpt4 key购买 nike

我正在尝试使我的 Rails 应用程序成为本地 UTF-8。我这样做是因为自升级到 Ruby 1.9 以来,我遇到了这个问题,每次我的网页必须显示一些 UTF-8 字符时,我得到:

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

作为错误页面。我已经诊断出当我尝试呈现任何 UTF-8 文本时会出现错误,因为这种网页会失败:

 %h3.book_title
= "カタカナ"

(要求对上述字符串进行编码将返回 UTF-8)

然而这个会成功:

 %h3.book_title
= "カタカナ".force_encoding("ASCII-8BIT")

所以看起来 Rails 决定在默认情况下使用 ASCII-8BIT 编码呈现自 1.9 升级以来的所有页面。这是一个问题,因为我的页面经常显示只能在 UTF-8 中运行良好的多语言数据。

我尝试过的事情:

我正在使用 Mysql2 gem。我已经把它放在我的环境中了。rb:

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

这是在我的 application.rb 中:

config.encoding = "utf-8"

这些都没有真正起作用。谁能阐明如何使我的应用程序仅使用 UTF-8 而不是这种 ASCII-8BIT 废话?

最佳答案

将神奇的字符编码 shebang 添加到 View 文件中的第一行以强制使用 UTF:

# encoding: UTF-8
%h3.book_title
= "カタカナ"

关于ruby-on-rails - 当我需要 UTF-8 时,Rails 应用程序一直以 ASCII-8BIT 生成 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17752925/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com