我无法在Heroku中运行迁移,我相信这是由于我在我的lib
目录中创建的模块。执行该命令后heroku run rake db:migrate
我接收下面的错误:Heroku未运行由于红宝石模块导致的迁移
uninitialized constant ApplicationController::PgTools
/app/app/controllers/application_controller.rb:4:in <class:ApplicationController>
应用控制器的第4行是include PgTools
,这是有来访问我创建的PgTools模块内的方法。
尽管heroku迁移失败,我可以在我的本地开发环境中运行rake db:migrate
而不会失败(请注意,这两个环境都使用postgres数据库)。
我也有我的application.rb中文件中的以下两行
config.autoload_paths += %W(#{config.root}/lib)
config.autoload_paths += Dir["#{config.root}/lib/**/"]
您可能需要'宝石在你的Heroku实例安装pgtools'。 – adityajones
似乎'pgtools'文件没有部署到heroku ..是在部署之前添加了要提交的文件吗? – tihom
没有运气。重新运行'bundle install'并且仍然收到相同的错误。 – Anconia