ruby-on-rails - Phusion错误:Sass::Util:Module的未定义方法 `has?'

标签 ruby-on-rails rubygems passenger compass-rails

加载网页时,我收到了Phusion发出的以下错误消息:

There was an error while trying to load the gem 'compass-rails'.
Gem Load Error is: undefined method `has?' for Sass::Util:Module
Did you mean?  hash
               Hash
Backtrace for gem load error is:
/Volumes/Data/htdocs/zetcho/vendor/bundle/gems/compass-0.12.2/lib/compass/sass_extensions/functions/urls.rb:5:in `has?'

指定位置的代码是:
module Compass::SassExtensions::Functions::Urls


def self.has?(base, instance_method)
  Sass::Util.has?(:instance_method, base, instance_method)
end

我的gem文件包含:
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '~> 5.1.2'

# Use mysql as the database for Active Record
gem 'mysql2', '~> 0.3.18'

# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'

# Use Compass for stylesheets
gem 'compass-rails'

# Use the Compass extension susy
gem "sprockets"
gem 'susy'

我刚刚使用Rails 5.1.2和ruby 2.3.1创建了Ruby on Rails站点。我有一个较老的网站,可以很好地配合gem。我是否错过了总体安装的步骤,或者这是罗盘 rails 的错误?

尝试添加 Controller 时出现相同的错误:
rails generate controller home index

最佳答案

经过更多的挖掘,我发现了类似的问题。我通过将gem文件更改为以下内容来修复了该问题:

gem 'compass-rails', github: 'Compass/compass-rails'

然后:
rm gemfile.lock
bundle

关于ruby-on-rails - Phusion错误:Sass::Util:Module的未定义方法 `has?',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45269621/

相关文章:

ruby-on-rails - 如何重置 Phusion 乘客 Ruby on Rails 缓存?

Rails 应用程序中 Phusion Passenger 的 Mysql 错误

ruby-on-rails - 无法卸载 Rails gem

sql - Ruby on Rails : writing a migration to move a column to another table, 合并重复项,然后匹配 ID

ruby - 连接被拒绝 RubyGems

ruby - 从代码中的 require 行中查找 gem

ruby-on-rails - 如何在没有 Rhosync 或 RhoConnect 的情况下使用 Rhodes?

javascript - Ruby 全局变量是否等同于类对象上的类变量?

ruby-on-rails - 从 gem 添加 Rails Controller

ruby-on-rails - 在 Ruby on Rails 生产服务器的 Passenger 之前错误地安装了 Nginx