2

最终在我的 Mac 上安装 RMagick 后,我根据此处的教程设置了 attachment_fu:http://clarkware.com/cgi/blosxom/2007/02/24#FileUploadFu>我尝试通过上传表单上传文件时收到大约 80 条这样的消息:

/Library/Ruby/Gems/1.8/gems/rmagick-2.13.1/lib/RMagick.rb:44: warning: already initialized constant PercentGeometry
/Library/Ruby/Gems/1.8/gems/rmagick-2.13.1/lib/RMagick.rb:45: warning: already initialized constant AspectGeometry
/Library/Ruby/Gems/1.8/gems/rmagick-2.13.1/lib/RMagick.rb:46: warning: already initialized constant LessGeometry
/Library/Ruby/Gems/1.8/gems/rmagick-2.13.1/lib/RMagick.rb:47: warning: already initialized constant GreaterGeometry

我做了一些搜索,发现当您在应用程序中两次需要 RMagick 时,可能会出现此问题,为 require 语句使用不同的大小写:http ://work.rowanhick.com/2007/12/19/require-rmagick-and-case - 敏感性/我自己不需要它,但我想也许config.gem "rmagick"我的 environment.rb 文件中的行可能需要它。

表单提交后,它给了我一个验证错误:Content type is not included in the list 我检查了附件_fu 的来源并image/png在内容类型列表中找到了,所以我不认为这是正确的错误消息:http: //github.com/technoweenie /attachment_fu/blob/master/lib/technoweenie/attachment_fu.rb

有人对我如何使它起作用有任何想法吗?

4

3 回答 3

3

如果像我们一样,您正在使用需要 rmagick 的 gem(例如 gruff)(因此您无法真正纠正 require 语句的大小写),您可以配置 bundler 以使用匹配的大小写加载 rmagick。

例如,将以下内容添加到您的 Gemfile:

gem 'rmagick', '2.13.1', :require => 'RMagick'

这让我们今天摆脱了真正的泡菜。

感谢您的原始帖子-我们在阅读之前迷路了!

于 2010-10-26T10:15:25.450 回答
0

Paperclip 也有类似的问题,通过config.gem 'rmagick'environment.rb.

于 2010-12-04T00:57:21.133 回答
-1

更新:以下仅适用于 Mac。我的生产服务器对此感到窒息。不要使用它。

我也遇到过这个问题。在 config/environment.rb 我有:

config.gem 'rmagick'

它必须是小写的,否则 Rails 认为我没有安装所需的 gem。

Attachment_fu 有一个名为 rmagick_processor.rb 的文件,其中包含以下内容:

require 'RMagick'

如果将其更改为小写“require 'rmagick'”,则 RMagick 错误消息将消失。

于 2010-10-23T11:24:18.297 回答