Ruby on rails 回形针未定义方法';提交后';

Ruby on rails 回形针未定义方法';提交后';,ruby-on-rails,ruby,heroku,amazon-s3,paperclip,Ruby On Rails,Ruby,Heroku,Amazon S3,Paperclip,我正在做一个项目,它使用带ruby(2.2.7)和rails(3.2.22)的回形针(4.3.7)将图像上传到S3。在本地,一切都像一个符咒,但当我将项目推给Heroku时,我收到了以下错误: /app/vendor/bundle/ruby/2.2.0/gems/paperclip-4.3.7/lib/paperclip/has_attached_file.rb:94:in `add_active_record_callbacks': undefined method `after_commit

我正在做一个项目,它使用带ruby(2.2.7)和rails(3.2.22)的回形针(4.3.7)将图像上传到S3。在本地,一切都像一个符咒,但当我将项目推给Heroku时,我收到了以下错误:

/app/vendor/bundle/ruby/2.2.0/gems/paperclip-4.3.7/lib/paperclip/has_attached_file.rb:94:in `add_active_record_callbacks': undefined method `after_commit' for JobApplication:Class (NoMethodError)

有人知道会发生什么事吗?

你能更新到更新版本的Rails吗?表示它们需要rails>=4.2。我想你可能碰到了回形针上的虫子


如果你不能升级Rails,那么考虑向工作应用程序类添加一个SeaPixMebug方法。您可能需要查看回形针源代码,以了解他们试图添加的钩子,并确定您是否可以在没有该功能的情况下生存,或者需要重新创建该功能。它可能非常重要,也可能不重要。

您能更新到更新版本的Rails吗?表示它们需要rails>=4.2。我想你可能碰到了回形针上的虫子


如果你不能升级Rails,那么考虑向工作应用程序类添加一个SeaPixMebug方法。您可能需要查看回形针源代码,以了解他们试图添加的钩子,并确定您是否可以在没有该功能的情况下生存,或者需要重新创建该功能。它可能至关重要,也可能不至关重要。

在推到Heroku之前,您是否已完成资产预编译

rake assets:precompile RAILS_ENV=production
rake资产:预编译(RAILS\u ENV=production bundle exec rake 资产:precompile是确切的rake任务)

由于预编译仅在生产模式下完成,因此无需显式指定环境


希望它能起作用:)

在推到Heroku之前,你做过资产预编译吗

rake assets:precompile RAILS_ENV=production
rake资产:预编译(RAILS\u ENV=production bundle exec rake 资产:precompile是确切的rake任务)

由于预编译仅在生产模式下完成,因此无需显式指定环境


希望它能起作用:)

好吧,我已经通过使用旧版本的回形针(
2.7.0
)解决了这个问题,并将回形针配置移动到模型本身,而不是
production.rb
文件。无论如何,谢谢你的帮助

我已经解决了这个问题,使用了旧版本的回形针(
2.7.0
),并将回形针配置移动到模型本身,而不是
production.rb
文件。无论如何,谢谢你的帮助

不幸的是我不能。不过,我可以降级回形针版本。我之所以没有降级,是因为2.7.0版本没有返回正确的URL。不幸的是,我不能。我可以降级回形针版本,但我没有降级的原因是2.7.0版本没有返回正确的URL。