Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 强制用户重新加载资源_Ruby On Rails_Asset Pipeline - Fatal编程技术网

Ruby on rails 强制用户重新加载资源

Ruby on rails 强制用户重新加载资源,ruby-on-rails,asset-pipeline,Ruby On Rails,Asset Pipeline,有没有办法让用户自动重新加载资源 (我总是要求客户端在新部署后“重新加载缓存”,但必须有一种更好的、不那么突兀的方法?!)在Rails 3中没有理由“重新加载缓存”,因为资产名称现在包含内容摘要,所以如果您更改了一个字符,摘要就会更改,用户会请求新的、更新的资产。在这种情况下,请解释为什么会发生以下情况:我们对CSS进行了更改,重新编译了资产,然后用户看到了混乱。我们让他们重新加载缓存,然后就可以正常工作了。您使用的是哪个版本的rails?顺便说一句,这很奇怪,因为从用户的角度来看,当你更改CS

有没有办法让用户自动重新加载资源


(我总是要求客户端在新部署后“重新加载缓存”,但必须有一种更好的、不那么突兀的方法?!)

在Rails 3中没有理由“重新加载缓存”,因为资产名称现在包含内容摘要,所以如果您更改了一个字符,摘要就会更改,用户会请求新的、更新的资产。

在这种情况下,请解释为什么会发生以下情况:我们对CSS进行了更改,重新编译了资产,然后用户看到了混乱。我们让他们重新加载缓存,然后就可以正常工作了。您使用的是哪个版本的rails?顺便说一句,这很奇怪,因为从用户的角度来看,当你更改CSS中的某些内容时,他必须使用不同的名称获得一个完全不同的CSS文件(因此它不存在于浏览器的缓存中)…使用版本3.1.1。当我在部署的应用程序上查看源代码时,它会像这样加载CSS:“-根据我之前看到的,其中没有整数-这是一个配置选项吗?是的,我看到了摘要的一个选项,检查您的config/environments/production.rbIt中的config.assets.digest选项是否为true。由于某些原因,这似乎为false-谢谢-现在将进行调查