首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >指定erb模板文件编码

指定erb模板文件编码
EN

Stack Overflow用户
提问于 2014-12-27 17:28:36
回答 1查看 856关注 0票数 2

我尝试运行一个rails应用程序(爱遗),使用apache2和客运。erb文件包含UTF-8编码字符.我明白了

代码语言:javascript
复制
Encoding::CompatibilityError (incompatible character encodings: ASCII-8BIT and UTF-8):

错误,对应于包含utf-8编码字符的erb中的行。有趣的是,另一台从rvm中安装完全相同的机器没有这个问题。唯一的区别是,我们可以确定工作机器的默认区域设置为hu_HU.UTF-8,因为不工作的机器具有C。但是,在更改系统区域设置后,问题并没有消失。

试着指定

代码语言:javascript
复制
<% # -*- coding: UTF-8 -*- %>

在erb文件的开头,检查Application类是否有

代码语言:javascript
复制
config.encoding = "utf-8"

已添加

代码语言:javascript
复制
Encoding.default_external = "UTF-8"

添加到config/application.rb的开头。

代码语言:javascript
复制
export RUBYOPT=-Ku

到/etc/default/apache2,以及

代码语言:javascript
复制
SetEnv RUBYOPT=-Ku

到apache配置文件。

他们都没有解决这个问题。

我使用apache2和所有与ruby相关的东西,包括通过root安装rvm的乘客。版本:Ruby2.1.0p0 (2013-12-25修订版44422) x86_64-linux Rails 4.0.2乘客4.0.56

任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-04 15:55:40

使用/config/application.yml中的非ASCII字符可以避免此错误。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27669682

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档