2017-02-23 46 views
1

這更多的是一個好奇心的問題。保存用戶上傳文件的Rails目錄

現在我做store_dir 'uploader_type/model.id(例如:profile_picture/1/)。

但我真的很想知道什麼是命名目錄來存儲用戶上傳文件的最佳做法?

回答

0

相信我,從我的經驗來看,創建一個目錄結構會帶來更多的麻煩而不是帶來好處。文件夾將文件緊密地連接到目錄,最終會讓您的生活更加難以找到給定的文件。此外,如果有一天您需要遷移文件夾(特別是在S3中),您將需要爲此創建腳本,因爲這不是一件簡單的任務

爲什麼不保留所有用戶上傳的圖片到 store_dir'uploads /圖片'?

比,如果你需要創建一個唯一的名稱例如,您可以

  • 1.創建圖像即[MD5_HASH] .jpg文件
  • 2.運輸的「目錄結構的MD5到文件」(IM假設你使用紅寶石 - > 「#{} model.id - #{} model.class.to_s.downcase的.jpg」

假設你有一個Profile模型和Car模型 你會用下列結構落得內uploads/images

  • 1_profile.jpg
  • 2_profile.jpg
  • 1_car.jpg
  • 2_car.jpg