gpt4 book ai didi

ruby-on-rails - 防止 Rails 3.2.11 Assets 管道缓存?

转载 作者:行者123 更新时间:2023-12-04 06:17:27 25 4
gpt4 key购买 nike

我已经阅读了大量关于 Rails Assets 管道的帖子和文章以及问答
但我仍然没有想出如何完全关闭缓存。

我们使用的是 Rails 3.2.11,在我们的实验室环境(类似于开发)中,我们遇到了一个问题,因为即使我们没有在 Assets 管道中预编译或指纹 Assets ,它们仍然被缓存在 Rails(机架?) 缓存。这很烦人,因为某些 Assets 是基于其他配置更改的 ERB,因此缓存变得陈旧。为了尝试关闭缓存,我们设置了以下配置:

  config.action_controller.perform_caching = false

config.assets.compress = false

config.assets.debug = true

# just in case
config.cache_store = :file_store, "file_cache"

然而, Assets 出现在 tmp/cache/assets反正。我至少希望它们出现在 file_cache ,但我真的希望它们根本不会被缓存。

我们如何防止这些 Assets 被缓存?在这种环境下,仅仅删除缓存是不够的。

额外问题:只要这些文件被缓存,为什么它们在 tmp/ 中而不是在 file_cache/ ?

最佳答案

要关闭 Assets 缓存:

config.assets.cache_store = :null_store

请注意,这是配置。 Assets .cache_store 不是 Rails config.cache_store。

另请注意,Sass 为编译的样式表提供了单独的缓存,默认情况下在 tmp/cache/sass 中。 ,如果要禁用它,则必须单独执行此操作:
config.sass.cache = false

回答 奖金问题 ,当 Rails Guide说:

The default Rails cache store will be used by Sprockets to cache assets in development and production.



我认为他们意味着将使用配置的 Rails 缓存存储。我错了,除非您明确更改 Assets 缓存,否则它使用默认缓存。

关于ruby-on-rails - 防止 Rails 3.2.11 Assets 管道缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15378018/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com