gpt4 book ai didi

ruby-on-rails - 将 HTML5 离线支持添加到 Rails 3.1 应用程序

转载 作者:搜寻专家 更新时间:2023-10-31 08:12:15 24 4
gpt4 key购买 nike

我想为我的 Rails 3.1 应用程序添加 HTML5 离线支持,我遇到了 rack-offline ,适合此目的的 gem 。但是,rack-offline 只会将 public 文件夹中的资源添加到应用程序缓存 list 文件中。我如何让它还添加我的 assets 文件夹( Assets 管道生成的那些)中的所有编译 Assets ?


具体来说,我的 routes.rb 文件中有以下内容:

offline = Rack::Offline.configure do
cache "images/masthead.png"

public_path = Rails.public_path
Dir[public_path.join("javascripts/*.js")].each do |file|
cache file.relative_path_from(public_path)
end

network "/"
end

与我拥有 Rails.public_path 的方式相同,我可以获得编译 Assets 的路径吗?这样我就可以使用上面的代码将该路径中的文件添加到缓存 list 中。

最佳答案

首先,我认为这段代码应该放在初始化程序中,因为它只是配置:

Rack::Offline.configure do
cache "images/masthead.png"

public_path = Rails.public_path
Dir[public_path.join("javascripts/*.js")].each do |file|
cache file.relative_path_from(public_path)
end

network "/"
end

要回答有关提供已编译 Assets 的问题,它们可以从浏览器访问,因此您需要做的就是手动提供缓存语句,一切都应该有效。尝试使用这样的配置:

Rack::Offline.configure do
cache "assets/application.js"
cache "assets/application.css"
network "/"
end

关于ruby-on-rails - 将 HTML5 离线支持添加到 Rails 3.1 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7020384/

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