我在制作中使用nginx +独角兽
我在log / unicorn.log上遇到以下错误,但它在localhost(在环境开发和生产环境中)都能正常工作
I, [2012-07-01T19:20:39.905978 #15422] INFO -- : Refreshing Gem list
E, [2012-07-01T19:20:40.526582 #15418] ERROR -- : uninitialized constant ApplicationController::CanCan (NameError)
换行
rescue_from CanCan::AccessDenied do |exception|
我在Gemfile(宝石'轨道'下面)有宝石'cancan'。 Cancan gem已安装。我已经尝试了1.6.7和1.6.8版本
current$ bundle exec gem list cancan
*** LOCAL GEMS ***
cancan (1.6.7)
current$ bundle exec rails -v
Rails 3.2.3
current$ ruby -v
ruby 1.9.3p125 (2012-02-16 revision 34643) [x86_64-linux]
current$ bundle exec rails c production
Loading production environment (Rails 3.2.3)
1.9.3p125 :001 > CanCan
=> CanCan
1.9.3p125 :002 >
我的配置有什么问题?
UPD:
require 'cancan'
中的application_controller
会导致错误No such file to load -- cancan (LoadError)
答案 0 :(得分:2)
我认为unicorn
在重新启动时不会加载新宝石。
/etc/init.d/unicorn_<project_name> stop
/etc/init.d/unicorn_<project_name> start
解决问题