Ошибка скрепки - PullRequest
       18

Ошибка скрепки

12 голосов
/ 07 октября 2009

Я получаю следующую ошибку в моем файле разработки.log

[paperclip] Во время обработки была получена ошибка: #

И я погуглил об этой ошибке, и я обнаружил, что многие люди решили эту проблему, добавив эту строку Paperclip.options [: command_path] = "/ usr / local / bin"

Однако, я все еще получаю ту же ошибку, даже после добавления этой строки! Я перепробовал все возможное!

Любая помощь будет принята с благодарностью!

С уважением,

Punit

Ответы [ 6 ]

11 голосов
/ 08 октября 2009

Параметр Paperclip.options [: command_path] предназначен для расположения ваших исполняемых файлов ImageMagick (в данном случае идентифицируйте). Попробуйте запустить which identify и установить опцию в качестве возвращаемого каталога. Если эта команда ничего не возвращает, убедитесь, что ImageMagick установлен правильно.

5 голосов
/ 16 ноября 2010

Вот что у меня сработало ...

Я удалил изображение, установленное с официальной веб-страницы. Я переустановил его из sudo apt-get install imagemagick

тогда я написал Paperclip.options [: command_path] = "to / correct / path"

ПРОБЛЕМА ЗДЕСЬ БЫЛА ...

когда я запустил "which identifier", оказалось, что путь был "usr / local / bin / identifier" это означает, что мы должны были указать путь «usr / local / bin» как мой путь.

НО ЭТО НЕ РАБОТАЛО!

Я неожиданно обнаружил, что я идентифицировал также путь "usr / bin". Итак, я изменился: «usr / local / bin» на «usr / bin»

И это было все!

3 голосов
/ 14 октября 2010

Это означает, что он не может найти исполняемый файл ImageMagick identify в месте, указанном вами в Paperclip.options[:command_path] (в вашем случае /usr/local/bin).

Обычно это вызвано двумя причинами:

  1. Возможно, вы на самом деле не установили ImageMagick.
    • РЕШЕНИЕ : установите его:
      • Для MAC: sudo port install ImageMagick (который устанавливает бинарный выпуск)
      • Для UBUNTU: sudo sudo apt-get install imagemagick
  2. Возможно, место, где вы установили ImageMagick, не /usr/local/bin, а что-то другое.

    • РЕШЕНИЕ : найдите, где оно установлено, или с помощью команды:

      which identify (в случае, если идентификатор находится в текущей переменной PATH, как и должно быть)

    или через сырой поиск через файловую систему:

    find / -name identify

В любом случае, обычное расположение этих файлов в Ubuntu должно быть /usr/bin

2 голосов
/ 09 октября 2012

Есть две возможные проблемы:

  1. Изображение Magick не установлено или сломано
  2. Скрепка не может найти изображение Magick

Давайте рассмотрим их по одному:

1. Убедитесь, что у вас установлена ​​программа Image Magick и она работает

Тип:

identify 

в командной строке должно работать. Если он не найден или не работает, установите Image Magick. Это исправило это? Если нет, продолжайте:

2. Помогите Скрепке найти изображение Магии

Тип:

which identify

в командной строке, чтобы получить путь к команде идентификации. Теперь в файле production.rb добавьте следующую строку в блок конфигурации:

Paperclip.options[:command_path] = "/usr/bin"

Перезагрузите сервер. Это должно исправить это.

0 голосов
/ 02 ноября 2011

Попробуйте выполнить команду identifier в командной строке и посмотрите, не выдает ли это сообщение об ошибке. Я обнаружил, что на моем сервере отсутствуют некоторые библиотеки делегатов.

identify example.jpg
0 голосов
/ 08 февраля 2011

usr / bin работал на меня (ядро Fedora 14)

...