2013-03-19 9 views
8

Utilizzo Rails 3.2.13 e JavaScript in /assets/javascripts/globals.js.erb. È comunque possibile accedere agli helper di Rails o ai dati del controller nel file JavaScript? Qualcosa come ...Accesso all'helper current_user in JavaScript

var App = { 
    globals: { 
    user: { 
     name: '<%= current_user.name %>' 
    } 
    } 
}; 

risposta

14

non puoi farlo. le risorse vengono compilate una volta in produzione, quindi non dovrebbe dipendere dallo stato della richiesta (come l'utente corrente o i parametri passati alla richiesta). La cosa più vicina che si può fare è quello di aggiungere una variabile globale nel layout dell'applicazione

<script type="javascript"> 
    App.globals.user.name = <%= current_user.name %> 
</script> 
+0

ringrazio molto :) – Zeck

+0

Abbastanza simile, ma forse utile per qualcun altro. '<% = javascript_tag do%> window.username =" # {j current_user.name} "; <% end %> ' – Horacio

Problemi correlati