0

私のrails3.2プロジェクトには、次のようなコントローラーがいくつかあります。

/app/controllers/application_controller.rb
/app/controllers/college/application_controller.rb
/app/controllers/college/actors_controller.rb

/app/controllers/college/actors_controller.rbのコンテンツは次のようになります。

class College::ActorsController < College::ApplicationController
end

/app/controllers/college/application_controller.rbのコンテンツは次のようになります。

class College::ApplicationController < ApplicationController
  before_filter do
    puts "welcome"
  end
end

コントローラを変更した場合は、Webブラウザをリロードしてください。コンソールには、「welcome」という文字列を出力できます。しかし、webrickをシャットダウンし、webrickを再起動してから、Webブラウザーをリロードすると、コンソールに「welcome」が出力されません。

College :: ApplicationControllerがロードされていないように見えますか?

そして、どうすればそれを修正できますか?

4

1 に答える 1

5

似たようなものに遭遇し、完全に定義されたクラス定義が問題を解決しました。

変えてみる価値はある

class College::ActorsController < College::ApplicationController

class College::ActorsController < ::College::ApplicationController

class College::ApplicationController < ApplicationController

class College::ApplicationController < ::ApplicationController
于 2012-12-06T11:53:14.250 に答える