2016-10-03 64 views
2

將未預編譯的公共資產存儲在Rails應用程序中的標準位置是「public/system」。這有什麼理由嗎?我想讓事情變得簡單,爲什麼不把資產放在「公共」文件夾中?rails「public/system /」中「system」文件夾的用途是什麼?

+1

問題的一般偏好,你可以命名你的子文件夾公開/任何你喜歡的,他們仍然會被包括在內。它還提供了一定程度的組織,而不是將頂級文件夾中的文件放在頂層 –

回答

4

public/system文件夾本身不是Rails標準,甚至沒有文檔化的建議。像Capistrano這樣的部署工具採用該慣例作爲對您的建議,以便組織在部署之間共享且不應存在於您的存儲庫中的用戶資產。這個想法是符號鏈接public/system到capistrano的shared/system,這是在發佈文件夾之外。

如果你看一看paperclip's(這是一種廣泛使用的上傳庫)的文檔,你會發現:

默認情況下,該位置是 :RAILS_ROOT /公/系統/:類/:附件/:id_partition /:款式/:文件名。選擇此位置是因爲,在標準的Capistrano部署中,公共/系統目錄可以鏈接到應用程序的共享目錄 ,這意味着它可以在部署之間存活。

在您的開發環境中,如果您願意採用該約定,您應該忽略.gitignore中的該文件夾。

+0

完美,謝謝,該應用使用Paperclip和Capistrano。 –

+0

不客氣。 –

相關問題