Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Rails.application.config.assets.paths << Rails.root.join('app', 'assets', 'html')
- Rails.application.config.assets.precompile << '*.html'
- Rails.application.config.assets.register_mime_type('text/html', '.html')
- Rake::Task['assets:precompile'].enhance do
- Rake::Task['my_app:create_non_digest_assets'].invoke
- end
- namespace(:my_app) do
- logger = Logger.new($stderr)
- task(create_non_digest_assets: :'assets:environment') do
- manifest_file = File.new(Dir.glob(File.join(Rails.root, 'public/**/assets/.sprockets-manifest-*.json')).first)
- asset_dir = File.dirname(manifest_file)
- whitelisted_assets = []
- whitelisted_assets.concat(Rails.config.non_digest_assets) rescue nil
- JSON.load(manifest_file)['assets'].each do |asset, digested_asset|
- if whitelisted_assets.any? { |pattern| File.fnmatch?(pattern, asset) }
- logger.info("(My APP) creating #{asset} symlink for #{digested_asset}")
- FileUtils.ln_s(
- File.join(asset_dir, digested_asset),
- File.join(asset_dir, asset),
- { force: true }
- )
- end
- end
- end
- end
- Rails.application.config.non_digest_assets = %w(*.html)
- Sprockets.register_preprocessor 'text/html', -> (asset) do
- asset[:data] = ::ApplicationController.render({
- inline: asset[:data],
- layout: 'layouts/clark_u/application1'
- })
- end
Add Comment
Please, Sign In to add comment