скрепка для рельсов и пассажир "не распознаются командой" определить "

Хэш - это массив связанных списков. Функция хэширования преобразует ключ в число, которое используется как индекс элемента массива («ведро»), в который будет храниться значение. Связанный список обрабатывает случай, когда более одного хэша ключа имеет один и тот же индекс («столкновение»).

Знаменатель дроби - это общее количество ковшей.

Числитель фракции - количество ведер, имеющих один или несколько элементов.

Для хэшей с одинаковым количеством элементов, чем больше число, тем лучше. Тот, который возвращает 6/8, имеет меньшее количество столкновений, чем тот, который возвращает 4/8.

42
задан JP Silvashy 3 January 2010 в 19:58
поделиться

3 ответа

Это связано с ImageMagick. Опция command_path должна указывать на место установки и идентифицировать . Из командной строки вы можете определить это с помощью , которая идентифицирует.

$ which identify
/some/path/to/identify

После этого установите command_path на этот путь (в config/environments/ development.rb):

Paperclip.options[:command_path] = "/some/path/to"
49
ответ дан 26 November 2019 в 23:42
поделиться

Чтобы добавить еще одно потенциальное решение, которое я не видел особо обсуждаемого: ldconfig .

У меня была та же проблема, которую я только что выслеживал полтора дня. Я правильно переустановил ImageMagick из исходного кода с дополнительной поддержкой png и jpeg, я добавил LD_LIBRARY_PATH и DYLD_LIBRARY_PATH в переменные среды, я установил параметр : command_path для Paperclip. в моей конфигурации производственной среды. Хотя команды ImageMagick работали из командной строки, мою проблему со скрепкой ничто не решило.

Наконец, увидев мимоходом ldconfig , я попробовал это по прихоти, и это сработало.

sudo ldconfig

Возможно, я смог бы сделать то же самое, перезапустив apache или оборудование, но я был не в состоянии сделать это самостоятельно.

1
ответ дан 26 November 2019 в 23:42
поделиться

Это работало с http://arglebargle.posterous.com/path-environment-variable-for-rails-using-pas

Поместите что-то подобное в VirtualHost (или где-нибудь еще, где установлен пассажир) :

SetEnv PATH /opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/mysql/bin
2
ответ дан 26 November 2019 в 23:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: