2012-03-03 31 views
1

我試圖從使用Carrierwave和MiniMagic的rails 3.2.1應用程序中的ckeditor gem上傳文件。試圖使用帶有carrierwave和MiniMagick的Rails ckeditor插件中上傳的圖像文件

我在OSX 10.6

我用自帶的寶石來生成模型和上傳發電機,即

軌產生的CKEditor:安裝--orm = active_record --backend = carrierwave

當時我按一下按鈕,圖像文件發送到服務器,我收到以下錯誤(在服務器輸出):

變量Errno :: ENOENT(沒有這樣的文件或目錄 - 識別-ping在/ var /文件夾/周/ wKG0M7udG5K7 cAjGxTF86k +++ TI/-Tmp-/mini_magick20120303-72546-1sg4xlv.jpeg):

它似乎期望tmp文件位於該位置,但它將它們置於public/uploads/tmp(發生這種情況後文件仍然存在)。

如果我關掉MiniMagick(通過註釋掉包括ckeditor_picture_uploader和刪除調整大小的代碼),我得到一個不同的錯誤:(!版本內容不存在)

引發ArgumentError: 應用程序/模型/ ckeditor/asset.rbin url' app/models/ckeditor/picture.rb:5:inurl_content'

在後一種情況下,文件實際上會在public/uploads目錄中結束,但我仍然無法使用它由於:

我還得到「版本內容不存在」錯誤如果我只是打開圖像鏈接對話框,然後按「瀏覽服務器」(意思是我一按按鈕就會得到錯誤,而不是在我選擇了一個文件後,我不能這樣做是因爲錯誤)。

我還沒有修改生成器創建的asset.rb和picture.rb。

任何幫助,將不勝感激。

+0

不'這identify'實際上會導致路徑識別的命令? – Maran 2012-03-03 22:26:31

+0

好問題。我被注意到錯誤的路徑,但你是對的,似乎這個識別命令不存在。我會認爲如果需要mini_magick gem應該安裝它(?)。我在我的Gemfile中有mini_magick,並且束輸出顯示「使用mini_magick(3.4)」 – 2012-03-03 22:35:52

+0

您仍然需要安裝ImageMagick才能使用它。 MiniMagick只是IM的命令行工具的一個包裝。 – Maran 2012-03-03 22:38:43

回答

0

由於Maran提到你需要安裝ImageMagick。在我看來,Homebrew是迄今爲止安裝ImageMagick最簡單的方法,我高度推薦它。

1

退房在這個環節的底部的解決方案:

https://github.com/jnicklas/carrierwave/issues/345

剛剛安裝的ImageMagick(如其他人所說的)我的問題是固定的,但也有人說,加入:

ENV['PATH'] = "/usr/local/bin:#{ENV['PATH']}" 

到application.rb修復了這個問題。

0

我認爲你需要重新安裝imagemagick。

命令來安裝

brew install imagemagick 
相關問題