我正在開發一個應用程序,允許用戶上傳視頻,圖片,音頻剪輯和文檔。這些文件正在用Paperclip gem上傳並存儲在s3上。回形針不會顯示/檢測任何不是圖像的文件大小
現在我正在對他們上傳後的文件大小進行一些處理,但回形針仍然文件到數據庫保存的'0'
上的任何文件的文件大小不.jpg, .gif, .png
。我試着檢查自己的文件大小,上傳的長度,以及其他幾個頭腦發達的想法。
無論如何monkeypatch,或劫持回形針的要求,找出文件大小是什麼?有沒有人遇到過這個問題?
我正在開發一個應用程序,允許用戶上傳視頻,圖片,音頻剪輯和文檔。這些文件正在用Paperclip gem上傳並存儲在s3上。回形針不會顯示/檢測任何不是圖像的文件大小
現在我正在對他們上傳後的文件大小進行一些處理,但回形針仍然文件到數據庫保存的'0'
上的任何文件的文件大小不.jpg, .gif, .png
。我試着檢查自己的文件大小,上傳的長度,以及其他幾個頭腦發達的想法。
無論如何monkeypatch,或劫持回形針的要求,找出文件大小是什麼?有沒有人遇到過這個問題?
默認情況下,Paperclip用於處理圖像。如果您需要能夠處理其他文件類型,則必須考慮編寫自己的處理器:https://github.com/thoughtbot/paperclip/blob/master/lib/paperclip/processor.rb。這將允許你在任何你需要的方式在模型聲明時處理文件:
has_attached_file :scan, :styles => { :text => { :quality => :better } },
:processors => [:ocr]
這裏的自述文檔很重要的一點:
注:由於處理器通過打開原始附件操作 納入樣式中,如果沒有樣式 定義,則不運行處理器。
這意味着您需要指定某種styles
以使您的處理器或任何其他處理器能夠運行。對於一個基本的定製處理器,像:styles => { :default => true }
這樣簡單的東西就足以讓你走了。
謝謝@andrewle這是非常有幫助的。那麼我將不得不在自己的處理器上工作。我真正需要的是源文件的大小,但我想知道需要做多少工作。 我將首先按照您的建議添加樣式,然後瞭解它會變成什麼樣子。再次感謝。 –