4

以前は 2.xを使用rails-sprocketsしていましたが、電子メール レイアウト テンプレートで以下を使用して、css

Rails.application.assets.find_asset('file').to_s.html_safe

rails-sprocketsただし、これは3.x では機能しなくなり、使用することをお勧めします。

Rails.application.assets_manifest.assets['file.css']

これは、ファイルの文字列名のみを返します (存在する場合)。ビューに出力できるように、ファイルの本文を取得するにはどうすればよいですか?

4

1 に答える 1

3

スプロケット 3.x に約 7 か月間アップグレードしたにもかかわらず、私もこの問題に遭遇しました。

私はこれをできるだけ早くまとめました(おそらくもっと良い解決策があります...)-これによりパス名が取得されます-使用するだけですFile.read()

def find_asset_path(asset_name)
  if Rails.application.assets
    Rails.application.assets.find_asset(asset_name).pathname
  else
    name = Rails.application.assets_manifest.assets[asset_name]
    File.join(Rails.public_path, 'assets', name)
  end
end
于 2016-02-02T17:13:29.703 に答える