In Rails 4, invece di utilizzare una vista js.erb
vi consiglio che si tiene fede alla pipeline di asset, e passare l'URL ad esso con una variabile utilizzando invece gon o qualche altra tecnica discusso: Ruby on Rails - Send JavaScript variable from controller to external Javascript asset file
Con gon
:
app/views/layout/application.html.erb:
<head>
<meta charset="utf-8"/>
<%= include_gon %>
app/controllers/application_controller.rb:
before_filter { gon.path = asset_path 'image.png' }
app/beni/javascript/file.js.coffee:
alert gon.path
Questo metodo è più veloce perché il file è precompilata solo una volta in fase di avvio, viene servito dal server invece che attraverso Rails, e sulla stessa richiesta HTTP come il resto del Js.
fonte
2014-11-11 10:39:16
Puoi fare un esempio di questo utilizzo in CSS e HTML? – kzh
@kzh, l'ho già fatto. – Pablo
dovresti usare 'background-image: image-url (" rails.png ")'. non pertinente a questa domanda però ... – raven