1

我的 Rails 4 应用程序new.html.erb引用了form.html.erb

# app/assets/templates/jobs/new.html.erb
...
<ng-include src="'<%= asset_path("jobs/form.html") %>'"></ng-include>
...

# app/assets/templates/jobs/form.html.erb
my form is here

ng-includeAngularJS指令)

问题是,当form.html.erb发生变化时,生产环境仍然会加载旧的form.html.erb. 发生这种情况可能是因为new.html.erb尚未更改,因此具有相同的旧指纹,指向form.html.erb旧指纹。

Rails 的处理方式是什么?

4

1 回答 1

3

要回答这个问题,万一其他人有问题,您需要运行以下命令:

rake assets:clean
rake assets:precompile
touch tmp/restart.txt

运行 rake 任务后,需要重启 Rack,否则新的预编译的 assest 文件将无法加载。

于 2014-06-27T02:33:07.127 回答