【问题标题】:Ruby on Rails invalid byte sequence in UTF-8 (ArgumentError)Ruby on Rails UTF-8 中的无效字节序列(ArgumentError)
【发布时间】:2023-04-03 01:53:02
【问题描述】:

当我运行命令时

rails generate mongoid:config

rails generate rspec:install

我收到此错误 - match: invalid byte sequence in UTF-8 (ArgumentError)
我试过那些宝石:

gem 'rack-utf8_sanitizer'
gem "handle_invalid_percent_encoding_requests"
gem 'utf8-cleaner'

他们没有帮助! 我正在使用 macbook OSX 10.9 我该如何解决? 我正在使用 ruby​​ 2.1.2,我通过 rails new myapp 制作了应用程序,我还没有在代码中更改任何内容。

【问题讨论】:

  • 你使用什么 Ruby 版本?你在使用rails new NAME时是如何命名你的应用程序的?
  • 如果有堆栈跟踪,请发布。您可能有一个与您正在使用的 Ruby 版本不兼容的 gem。
  • 您是否在控制器或模型中添加了带有“ñ”或“´”的字符串?我以前也遇到过这个问题,并通过在文件开头添加#encoding: utf-8 来解决
  • #encoding: utf-8 - 在哪个文件的开头??????
  • 这就是为什么我首先问你是否在任何模型或控制器中添加了“ñ”或“´”,如果有,那是你要添加#encoding的文件,如果没有,好吧,它是别的东西......顺便说一句......如果你尝试将它添加到你的config/application.rb 怎么办?

标签: ruby-on-rails ruby macos ruby-on-rails-4 utf-8


【解决方案1】:

我发现了问题所在!它是一个 gem 'spring',它会在你运行时自动添加到 Gemfile:rails new myapp.为避免此问题,您需要运行: rails new myapp --skip-spring
我在这里找到了答案:Rails Spring breaking generators

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-19
    • 2012-12-11
    • 2015-07-04
    • 2014-01-09
    • 2016-07-05
    • 2013-08-20
    • 2014-09-11
    • 1970-01-01
    相关资源
    最近更新 更多