2010-01-29 59 views
1

让我先说这个,说我是一个总轨道noob。运行rake数据库时未初始化的常量ActionController:migrate

我刚刚写了一个迁移,但是当我尝试运行rake db:migrate --trace时,出现此错误。

(in /home/dkerschner/hsp-agent) 
** Invoke db:migrate (first_time) 
** Invoke environment (first_time) 
** Execute environment 

rake aborted! 
uninitialized constant ActionController 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:443:in `load_missing_constant' 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:80:in `const_missing' 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:92:in `const_missing' 
/var/lib/gems/1.8/gems/devise-0.9.1/lib/devise/rails/routes.rb:1 
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require' 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require' 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:521:in `new_constants_in' 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require' 
/var/lib/gems/1.8/gems/devise-0.9.1/lib/devise/rails.rb:1 
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require' 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require' 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:521:in `new_constants_in' 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require' 
/var/lib/gems/1.8/gems/devise-0.9.1/lib/devise.rb:229 
/usr/lib/ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require' 
/usr/lib/ruby/1.8/rubygems/custom_require.rb:36:in `require' 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require' 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:521:in `new_constants_in' 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require' 
/home/dkerschner/hsp-agent/config/environment.rb:9 
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require' 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require' 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:521:in `new_constants_in' 
/var/lib/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require' 
/var/lib/gems/1.8/gems/rails-2.3.5/lib/tasks/misc.rake:4 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:in `call' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:in `execute' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:631:in `each' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:631:in `execute' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:597:in `invoke_with_call_chain' 
/usr/lib/ruby/1.8/monitor.rb:242:in `synchronize' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:607:in `invoke_prerequisites' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:604:in `each' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:604:in `invoke_prerequisites' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:596:in `invoke_with_call_chain' 
/usr/lib/ruby/1.8/monitor.rb:242:in `synchronize' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:583:in `invoke' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2051:in `invoke_task' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `top_level' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `each' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `top_level' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2023:in `top_level' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2001:in `run' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling' 
/var/lib/gems/1.8/gems/rake-0.8.7/lib/rake.rb:1998:in `run' 
/var/lib/gems/1.8/gems/rake-0.8.7/bin/rake:31 
/var/lib/gems/1.8/bin/rake:19:in `load' 
/var/lib/gems/1.8/bin/rake:19 

我试图用devise这也正是t.authenticatable来自 这里是我的移民被命名为20100129183653_change_agent_staff.rb

class ChangeAgentStaff < ActiveRecord::Migration 
    def self.up 
    change_table :agent_staff do |t| 
     t.authenticatable 
     t.timestamps 
    end 
    end 

    def self.down 

    end 
end 

这是推动我疯了!我究竟做错了什么?

回答

2

我试图在早期重新创建,并且这不是您的迁移问题。问题在别处,你可能想看看你是否可以导致应用程序在其他地方出错。启动脚本/服务器并查看是否可以查看这些页面,或者是否生成错误。

你的应用程序有多远?如果它相当新(你知道你有一个有效的rails 2.3.5安装),你可能想尝试从头开始。设置身份验证,随时记录您的命令。然后发布您输入的所有命令和代码,直到故障点,我们将能够更好地诊断问题。

我在问这个问题,因为当我试图复制时,有太多不同的方法来设置它 - 使用设备生成器,或者手动设置,并且从开始使用设计,用户模型已经创建。

编辑:目前在change_table中没有可用于设计的t.authenticable。你必须手动添加它引用的列。

+0

我确实弄清楚了这一点,但我忘记了问题所在。然而它是设计相关的iirc。这只是我配置错误的东西。希望我写下了什么: - \ – baudtack 2010-02-01 06:52:55

+1

哦!我记得那是什么。通过设计,没有t.authenticatable for change_table只适用于create_table。我通过手动添加由t.authenticatble引用的列来修复它。 – baudtack 2010-02-02 18:16:41

相关问题