在rails应用程序中存储非预编译公共资产的标准位置是" public / system。"这有什么理由吗?我想保持简单,为什么我不应该把资产放在" public"文件夹?
答案 0 :(得分:7)
public/system
文件夹本身不是Rails标准,甚至不是文档推荐。像Capistrano这样的部署工具采用该约定作为建议,您可以组织在部署之间共享的用户资产,而不应该在您的存储库中。想法是符号链接public/system
到capistrano的shared/system
,它位于版本文件夹之外。
如果您查看paperclip's(这是一个广泛使用的上传库)文档,您会发现:
默认情况下,此位置为 :RAILS_ROOT /公/系统/:类/:附件/:id_partition /:款式/:文件名。选择此位置是因为在标准的Capistrano部署中, public / system目录可以符号链接到应用程序的共享 目录,意味着它在部署之间存在。
在您的开发环境中,如果您愿意采用该约定,则应该忽略.gitignore
中的该文件夹。