在 Rails 3.1 项目中,如果我使用 Emacs 编辑 app/assets/javascripts/users.js.coffee
,那么 Emacs 会创建一个名为 app/assets/javascripts/users 的备份文件.js.coffee~
(注意结尾的“~”)。
不幸的是,新的 Rails 3.1 资源管道看到了这个 .coffee~
文件,并将其直接注入(inject)到生成的 application.js
中,这反过来又导致 JavaScript 错误浏览器。
我可以通过编写以下内容来关闭 Emacs 中的备份:
(setq backup-directory-alist nil)
...或者我可以使用:
(setq backup-directory-alist `(("." . "~/.emacs-backups")))
...将它们移动到另一个目录。
但这将要求项目中的每个 Emacs 用户重新配置他们的 Emacs,这是不可取的。我更愿意将 Rails 3.1 配置为忽略以 .coffee~
结尾的文件。有没有简单的方法可以做到这一点?
最佳答案
我认为这是 require_tree 方法的一个缺陷;有点像, 似乎对此提出了一些问题:
https://github.com/rails/rails/issues/1863#issuecomment-1543809 ( rails ) https://github.com/sstephenson/sprockets/pull/119 (链轮) https://github.com/sstephenson/hike/issues/9 (远足,已修复此处)
看起来最近已经修复了,在Rails rc4(hike-1.1.0)之后,看起来hiking-1.2.0已经发布了修复程序,您可以尝试更新您的Gemfile以使用较新的版本
关于ruby-on-rails - Rails 3.1 Assets 管道 : Ignore backup files from Emacs and other editors,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6775125/