3

尝试在我的 Rails 控制器之一中创建 IMGKit 实例:

def wkhtmltoimage
  ...
  kit = IMGKit.new("http://#{request.host_with_port}/?auth_token=" + token)
  img = kit.to_img(:jpg)
  file = kit.to_file(Rails.root + "public/uploads/testimage.jpg")
  ...
end

当我加载页面时,我得到这个:

NameError in PagesController#wkhtmltoimage

uninitialized constant PagesController::IMGKit

在我的 Gemfile 中,我包含了正确的 gem:

gem 'imgkit'

Bundler 安装得很好。当我运行 Rails 控制台时,它就在那里并且可以工作:

1.9.3p194 :005 > IMGKit.new("http://google.com")
 => #<IMGKit:0x007fb08d16a658 @source=http://google.com, @stylesheets=[], @options={}> 
1.9.3p194 :006 > 

为什么 IMGKit 类可以在 Rails 控制台中工作,但不能在应用程序中工作?有什么建议么?使用 RVM、Pow、Rails 3.2.6(以及所有其他 gem 都可以在该设置下正常工作)。

编辑答案

重新启动 pow 服务器似乎已经解决了这个问题。只需输入终端:

touch tmp/restart.txt

那应该这样做。

4

2 回答 2

1

重新启动 pow 服务器似乎已经解决了这个问题。只需输入终端:

touch tmp/restart.txt

那应该这样做。

于 2012-09-14T20:29:34.093 回答
0

您将套件设置为控制器中的局部变量。您是否尝试将其设置为控制器中的实例变量(@kit)?

于 2012-06-30T05:47:29.133 回答