【发布时间】:2026-01-26 21:45:02
【问题描述】:
有没有办法询问资产管道是否存在资产?我主要看到的建议涉及使用File.exist? 手动检查文件路径。问题在于我有几个包含资产的宝石,所以我必须查看每个资产的资产目录,对吗?这似乎是我希望融入资产管道的东西,但我找不到任何对它的引用。
我目前的解决方案是一个丑陋的黑客,所以我希望你有更好的东西。调用 asset_path(file) 将为资产返回一个新的 URL (/asset/xyz),如果它不存在(或者如果它是绝对路径),则返回相同的路径。所以我丑陋的 hack 是:
def has_asset?(path)
# Asset pipeline only does relative paths
if path[0] == '/'
return false
end
asset_path(path) != '/#{path}'
end
【问题讨论】:
标签: ruby-on-rails-4 asset-pipeline