2012-03-22 37 views
0

错误消息: 未定义的方法`ADMINUSER”为#(NoMethodError) 异常类: PhusionPassenger ::不明错误红宝石上的Phusion NoMethod错误机架表名

ADMINUSER是在我的分贝的表。最糟糕的部分是,我从来没有使用过这个表,也没有从我的代码中调用它。

class AdminUser < ActiveRecord::Base 
has_and_belongs_to_many :pages 
    scope :named, lambda {|first,last| where(:first_name => first, :last_name => last)} 

end 

而且page.rb型号

class Page < ActiveRecord::Base 

    belongs_to :subject 
    has_many :sections 
    has_and_belongs_to_many :editors, :class_name => "AdminUser" 
end 

而且在section.rb型号

class Section < ActiveRecord::Base 

    AdminUser has_and_belongs_to_many :pages 
    belongs_to :page 

end 

这就是 - ,我甚至提ADMINUSER是我admin_user.rb车型唯一的地方它。还有另外0个AdminUser提到 - 这是我甚至没有开始在我的应用程序中使用的东西。 我在本地运行我的应用程序时没有问题,但在Ubuntu上,Passenger和Apache2下,Phusion拒绝加载我的应用程序。 (我对RoR和Ubuntu(基于Linux的操作系统)相当新) - 但是,我确实运行了rake db:migrate,是的,我确实安装了Passenger作为宝石,并且我使用的是mysql2 gem连接到我的分贝。当然,我在Ubuntu上安装并启动了mysql服务。 (另外,我确实创建了数据库,用户,并且 - 基本上rake db:migrate工作了100%)。

你能帮我吗,我正在放松心情 - 现在已经有这个问题2天了 - 而且不知道在哪里看。

环境:Rails的3.2.2,1.9.3的Ruby-P125

回答

0

尝试从section.rb

+0

嗯去除AdminUser删除所有我得到的是标准500.html - 出事了 - 没有关于日志它... – AplusB 2012-03-22 05:51:08

+0

好,所以问题是上面的代码在开发中工作,但在生产中引发错误...任何人都可以解释为什么? – AplusB 2012-03-23 03:18:17

+0

也许是因为在生产中,导轨会预加载所有类。 section.rb是否在开发过程中加载过?即你在开发中是否积极使用'Section'? – 2012-03-23 03:33:47