4

我正在使用乘客和 capistrano 部署我的第一个 rails 应用程序。

一切都很好,直到我尝试在浏览器中启动应用程序时遇到此错误。

Error message:
   uninitialized constant CarrierWave

Exception class:
   NameError

您可以在http://test.ajhezaty.com/上查看详细信息

该站点在本地运行良好,并且 CarrierWave 可以正确上传图像。

我试图通过运行重新启动 VPS 服务器

sudo /etc/init.d/httpd2 restart

但它没有解决问题。

供您参考,安装在服务器上的 gem

 $ gem list | grep carrierwave
 carrierwave (0.6.1)
4

2 回答 2

15

您需要像这样将carrierwave 添加到您的application.rb文件中:

require File.expand_path('../boot', __FILE__)

require 'rails/all'

require 'carrierwave'

if defined?(Bundler)
  # Bundler stuff
end

# Rest of file ommited.

这在使用 nginx/unicorn 的生产中对我有用。不要忘记重新启动您的独角兽服务器。

于 2012-06-21T07:04:25.000 回答
2

您可能在本地安装了 gem,但请确保将其添加到 Gemfile,通过 ssh 捆绑安装,并在将使用它的控制器中要求它。

于 2012-04-12T03:32:14.493 回答