Ruby on rails Cygwin下的Rails编码

Ruby on rails Cygwin下的Rails编码,ruby-on-rails,ruby,eclipse,cygwin,Ruby On Rails,Ruby,Eclipse,Cygwin,我正在尝试在Cygwin和Eclipse下开发rails应用程序。我使用Ruby 1.9和Rails 4.1 我使用recode确保我的所有文件都使用Windows-1252编码,我的Eclipse项目使用相同的编码。我也尝试在这两个地方使用UTF8,但这个错误不断出现: incompatible encoding regexp match (Windows-1252 regexp with UTF-8 string) class ApplicationController < Acti

我正在尝试在Cygwin和Eclipse下开发rails应用程序。我使用Ruby 1.9和Rails 4.1

我使用recode确保我的所有文件都使用Windows-1252编码,我的Eclipse项目使用相同的编码。我也尝试在这两个地方使用UTF8,但这个错误不断出现:

incompatible encoding regexp match (Windows-1252 regexp with UTF-8 string)

class ApplicationController < ActionController::Base
# Prevent CSRF attacks by raising an exception.
# For APIs, you may want to use :null_session instead.
protect_from_forgery with: :exception
这是否与我的Rails/Ruby read有关,Rails源文件采用Windows编码,而我的代码采用Cygwin下的UTF-8设置

编码:utf-8


在每个ruby源文件的顶部

我找到了这个链接,它引导您通过Cygwin在Windows上安装Rails。我知道你已经安装了它,但它包括让Cygwin识别UTF-8编码

我不知道你是在工作还是在家使用Windows。如果是后者,您可能需要花一点时间在VirtualBox上安装Ubuntu。你只需要几GB的空间,整个Linux操作系统在Windows中作为一个应用程序运行。这是Rails应用程序的理想选择,因为许多教程都推荐使用Unix,甚至更多的公司使用Unix来编程和运行服务器


如果您不知道,Linux属于Unix类别,其中也包括Mac。Windows很难在某些语言中运行程序,因为它的内核和目录结构与Unix的设计不同。但是,我相信你知道这一点

不,它不起作用。我相信问题来自Windows-1252中的Rails gem和UTF-8中的代码。我已经更新了OP。根据@Pedro计划如何运行他的程序,添加这样一行在Unix系统上是多余的。如果有很多源文件,这也可能是一件痛苦的事情。在这种情况下,最好调整用户环境,而不是程序。没有什么比stacktrace Posted中的不兼容编码regexp匹配Windows-1252 regexp和UTF-8字符串更合适的了。这是引发异常的原因,stactrace是引发异常的调用。@PedroMontotoGarcía您仍然有问题吗?如果没有,请在下面选择一个答案,投票选出有帮助的答案,或者提交您自己的回复和详细解释。我还没有在Windows上解决它,我继续在Linux上解决它,没有任何问题。