Rails 关于 Assets Pipeline 的使用场景和技巧

geekontheway · 2012年04月19日 · 最后由 huacnlee 回复于 2012年04月19日 · 3619 次阅读
  1. 现在有一个项目是部署在 windows2008 的 (客户指定这个服务器),所以每次修改了 assets 都是在本地执行 rake assets:precompile 做一个 commit,push 到部署分支之后在服务器上 git pull 下来,每次编译 assets 都得不少时间,不知道大家有没有更好的方法?
  2. 如果服务是是 linux 环境,大家是本地编译呢,还是使用 capistrano 部署的时候编译?Ryanb 在 RailsCasts 中也介绍了本地编译之后 Rsync 到服务器,哪种更有优势?
  3. 之前有一个项目是 REE+Rails 2.3 的,没有 assets,静态文件是放在 public 下的。除了 ruby 和 rails 的版本原因之外,有不使用 assets 的场景或者更好的静态文件处理方法吗?
  1. 编译慢 这个没办法,我觉得是你的时间上可能是花在上传下载上了
  2. 本开开发环境不用编译,都是在 capistrano 部署的时候 编译 直接 uncomment 掉 # load 'deploy/assets' 就行
  3. 要改 Rails3 的 assets 机制不方便,你也可以专门写静态的 js css,放在 public 下。另外 assets 你可以考虑放在一个专门的 静态文件服务器上做 CDN。

@yakjuly thanks.关于本地编译是说不在部署的时候编译,而是把编译后的文件加入版本控制。

@geekontheway 明白你的意思了。那么多静态文件 肯定不能房 版本控制了。每次编译产生的文件名都会不同的

部署的时候 在服务器上编译不行么?

服务器的 CPU 总比你电脑的好吧!?所以要在服务器上面预编译

需要 登录 后方可回复, 如果你还没有账号请 注册新账号