我需要添加上傳和存儲任何類型的文件,PDF,XLS,DOC等的能力。在ruby on rails應用程序中執行此操作的最佳方法是什麼?如何將文件上傳添加到Rails應用程序?
回答
我想這正是你要找的。
我建議你使用paperclip或carrierwave這兩個都是非常好的libs,在大多數情況下都是開箱即用的。
你也可以看看attachment_fu導軌。
對於文件上傳,我和兩位大玩家合作過。 carrierwave和paperclip。
它們爲支持不同存儲方案的常見任務提供了一個很好的解決方案。兩者都支持文件系統和S3。 Carrierwave還支持Rackspace Cloud Files和MongoDB的GridFS。
我會推薦carrierwave,因爲他們不同的使用方式。它使用您在模型上安裝的獨立上載類。這會將與文件上傳相關的代碼從模型代碼中分離出來。我覺得這種方法更簡潔,更容易測試。
WRT在對象的atts中存儲信息,您可以通過爲上傳的對象定義單獨的模型來在Paperclip中執行此操作,例如,創建一個has_one Image的配置文件對象,使用image類存儲上傳atts。 – Codebeef 2010-09-24 12:21:15
我現在意識到我曾想過一件事,並寫下了另一件事。我想表達的是,我覺得將代碼放在單獨的上傳類中,並且僅向模型中添加一個屬性,這是比模型中具有四個屬性和後處理代碼更清晰的實現。 如果您想將其包含在一對多/多對多關係中,您仍然必須將兩個解決方案都包裝在單獨的模型中。 – 2010-09-24 12:31:37
現在根據評論編輯答案。 – 2010-09-24 12:39:57
- 1. 如何將大文件上傳到rails應用程序?
- 2. 如何將我的JavaScript文件添加到Rails應用程序?
- 3. 如何將文件上傳按鈕添加到我的C#Web應用程序?
- 4. 將ActiveRecord添加到Rails應用程序
- 5. 如何添加LESS文件到rails應用程序
- 6. 的Rails 3.如何將API添加到Rails應用程序
- 7. 將文件上傳到Rails應用程序:2 GB可能嗎?
- 8. 如何使用curl CLI將文件上傳到Rails應用程序的ruby中?
- 9. 將Ionic應用程序添加到Rails 4應用程序
- 10. 如何將我的Js/Css文件添加到Rails應用程序?
- 11. 如何將文件上傳到iPhone應用程序
- 12. 如何將文件從codeigniter應用程序上傳到Dropbox
- 13. 如何將字體添加到Web應用程序.css文件
- 14. 如何將源文件夾添加到Grails應用程序
- 15. 如何將幫助文件添加到MVC3應用程序?
- 16. 如何將文件添加到UWP應用程序的資源?
- 17. 如何將Html文件添加到cakephp應用程序中?
- 18. 如何將Helpers添加到僅限API的Rails應用程序
- 19. 如何將IP限制添加到您的Rails應用程序?
- 20. 如何將Ruby C擴展添加到Rails應用程序中?
- 21. 如何將Devise Confirmable添加到現有的Rails應用程序
- 22. 如何將公共API添加到Rails應用程序?
- 23. 如何將Ruby博客添加到Rails 3應用程序
- 24. 將博客添加到Heroku上的Rails應用程序
- 25. 將文件添加到應用程序輸出目錄後無法上傳「opencv_core242」
- 26. Selenium WebDriver- Java - 文件上傳失敗點擊添加文件按鈕將其上傳到應用程序
- 27. 如何將上傳實用程序添加到wmd編輯器?
- 28. 如何將消息傳遞子應用程序添加到我的Rails 3應用程序中?
- 29. 如何將鉤子添加到應用程序上下文初始化事件?
- 30. Rails應用程序,上傳文件到S3
我個人不會推薦attachment_fu,因爲它似乎沒有維護,並且已經這麼一年多了。 – 2010-09-24 12:01:34