服务器在生产环境中运行时,Rails重新加载ActionView :: Template

时间:2018-07-09 15:32:10

标签: ruby-on-rails ruby-on-rails-5

我想在服务器以生产模式运行时重新加载ActionView :: Template。

让我们假设服务器正在生产模式下运行,并且我无法以任何方式重新启动/重新加载服务器。并且layout.html.erb被更改。
我该如何修饰模板,以便更改可以生效。

1 个答案:

答案 0 :(得分:0)

找到了可行的解决方案。

Rails使用ActionView::Resolver::Cache缓存模板。如果您获得解析器,则可以使用clear_cache清除上下文。

ApplicationController中,您通过lookup_context.view_paths.paths.first接收到上下文。只需在解析器上调用clear_cache,Rails就会在下一个请求时重新加载缓存。