Ruby on rails 如何在没有特定子文件夹的情况下预编译资产?

Ruby on rails 如何在没有特定子文件夹的情况下预编译资产?,ruby-on-rails,asset-pipeline,assets,Ruby On Rails,Asset Pipeline,Assets,如何在没有特定子文件夹的情况下预编译资产 例如,我的资产是这样的: app/assets /fonts /images sprite.png /sprite icon1.png icon2.png ... iconX.png /stylesheets /javascripts 如何配置资产以在imagem中不使用文件夹/sprite的情

如何在没有特定子文件夹的情况下预编译资产

例如,我的资产是这样的:

app/assets
    /fonts
    /images
        sprite.png
        /sprite
            icon1.png
            icon2.png
            ...
            iconX.png
    /stylesheets
    /javascripts

如何配置资产以在imagem中不使用文件夹
/sprite
的情况下进行预编译?

一年前,这对我很有用。我不再这样做了,但我不知道为什么它不能继续工作。将其放入config/application.rb(或config/initializers/assets.rb):

您可能需要更新以上内容,以便更好地匹配以下源代码中的内容。看起来有点变化了,但这会让你达到你需要去的地方

config.assets.precompile = [
  lambda do |filename, path|
    path =~ /app\/assets/ && 
    !%w(.js .css).include?(File.extname(filename)) &&
    path !~ %r{app/assets/images/sprite/}
  end,
  /(?:\/|\\|\A)application\.(css|js)$/
]