テストのためにいくつかの新しい宝石をインストールし、初期化されていない定数ActionController :: Dispatcher :: MiddlewareStackエラーが発生しました。私はgem rdocsの指示に従いました。私のenvironment.rbファイルにgemの依存関係を指定し、次にrake gemsを実行しました:installとrake gems:unpack。未初期化定数ActionController :: Dispatcher :: MiddlewareStack
私は自分のenvironment.rbファイルを一度に1行ずつ異なるプロジェクトにコピーしましたが、エラーは発生しませんでした。他にどんなことが起こっているのか不思議でした。
はここでエラーの長いバージョンです(私が最初に簡単なテストを実行中にエラーに走った。私は「active_support」を必要としないときに同じことが、コンソールで起こる):
$ ruby test/unit/user_test.rb
** has_many_polymorphs: rails environment detected
/Users/thaiyoshi/.gem/ruby/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:105:in `const_missing': uninitialized constant ActionController::Dispatcher::MiddlewareStack (NameError)
from /Users/thaiyoshi/.gem/ruby/1.8/gems/actionpack-2.3.2/lib/action_controller/dispatcher.rb:71
from /opt/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /opt/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from /Users/thaiyoshi/.gem/ruby/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:156:in `require'
from /Users/thaiyoshi/.gem/ruby/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:521:in `new_constants_in'
from /Users/thaiyoshi/.gem/ruby/1.8/gems/activesupport-2.3.2/lib/active_support/dependencies.rb:156:in `require'
from /Users/thaiyoshi/.gem/ruby/1.8/gems/has_many_polymorphs-2.13/lib/has_many_polymorphs/autoload.rb:2
from /opt/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
... 8 levels...
from ./test/unit/../test_helper.rb:2:in `require'
from ./test/unit/../test_helper.rb:2
from test/unit/user_test.rb:1:in `require'
from test/unit/user_test.rb:1
はここに私の環境です。 RBファイル(デフォルトのコメントは削除):
RAILS_GEM_VERSION = '2.3.2' unless defined? RAILS_GEM_VERSION
# config.gem 'has_many_polymorphs', :version => "2.12"
# require ‘has_many_polymorphs‘
# Bootstrap the Rails environment, frameworks, and default configuration
require File.join(File.dirname(__FILE__), 'boot')
require 'has_many_polymorphs'
require 'active_support'
Rails::Initializer.run do |config|
config.time_zone = 'UTC'
config.gem "thoughtbot-factory_girl",
:lib => "factory_girl",
:source => "http://gems.github.com"
config.gem 'thoughtbot-shoulda',
:lib => false,
:source => 'http://gems.github.com'
end
私はそれが 'has_many_polymorphs'という行と関係していると思います。私はグーグル 'has_many_polymorphs'レール2.3.2との互換性が何も決定的なものは見つかりませんでした。 – sutee
一度に1つの宝石をインストールしようとしましたか? また、新しい秘密を作成して、それを私たち全員と共有したことがあります。P。 – allyourcode