2010-05-31 2 views
2

После наконец-то установлено RMagick на моем Mac я настроил attachment_fu согласно учебнику здесь: http://clarkware.com/cgi/blosxom/2007/02/24#FileUploadFu&gt, когда я пытаюсь загрузить файл через форму загрузки я получаю около 80 сообщений, как это:attachment_fu и RMagick

/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-sensitivity/ Мне это не нужно, но я думал, может быть, с линией config.gem "rmagick" в моей среде. Возможно, потребуются рельсы файлов rb.

После того, как форма передает это дает мне ошибку проверки достоверности: Content type is not included in the list Я проверил источник attachement_fu и нашел image/png в списке типов контента, поэтому я не считаю, что это правильное сообщение об ошибке: http://github.com/technoweenie/attachment_fu/blob/master/lib/technoweenie/attachment_fu.rb

Есть ли у кого-нибудь идеи о том, как я могу заставить это работать?

ответ

-1

Обновление: Работает только на Mac. Мой производственный сервер задохнулся от этого. Не используйте его.

Я столкнулся с этой проблемой. В конфигурации/environment.rb У меня есть:

config.gem 'rmagick' 

И это должно быть в нижнем регистре, в противном случае Rails считает, что я не установлен требуемый камень.

attachment_fu имеет файл с именем rmagick_processor.rb, который имеет следующую строку:

require 'RMagick' 

Если изменить это в нижнем регистре, «требуют„RMagick“», сообщения об ошибках RMagick исчезают.

+0

Это потому, что имена в файловой системе HFS + по умолчанию не чувствительны к регистру, и поэтому будет найдена даже библиотека «rmAGICK». Очевидно, что это не будет работать в Linux, где имена чувствительны к регистру. –

3

Если, как и мы, вы используете драгоценный камень (такой как грубый), который требует rmagick, как указано выше (и, следовательно, вы не можете действительно корректировать случай операторов запроса), вы можете настроить bundler для загрузки rmagick, используя соответствующий случай.

E.g. добавьте следующую строку в ваш Gemfile:

камень 'RMagick', '2.13.1': требуется => 'RMagick'

что у нас из реального рассола сегодня.

Спасибо за оригинальное сообщение - мы потерялись, пока не прочитаем его!

0

Если у вас возникли проблемы с Paperclip, решила удалить config.gem 'rmagick' из environment.rb.