31 votes

Comment rendre new.js.coffee.erb dans une application / vue?

En utilisant Rails 3.1 jquery_ujs, j'ai un lien avec: remote => true, et la nouvelle action du contrôleur répond avec js et affiche new.js.erb qui contient:

 $('#post-form').html('<%= escape_javascript(render(:partial => "form")) %>');
 

Il rend le _form.html.erb partiel. Cela marche.

Maintenant, je veux utiliser Coffeescript, mais renommer new.js.erb en new.js.coffee.erb ne fonctionne pas. Le pipeline d'actifs fonctionne-t-il uniquement dans les applications / actifs? Qu'est-ce que je fais mal? Merci.

51voto

cjbottaro Points 506

J'ai eu ce même problème en utilisant Rails 3.1.0. Essayez de renommer votre fichier en seulement new.js.coffee . Il devrait toujours afficher erb malgré l'absence d'extension sur le nom de fichier.

Il est certainement déroutant que les modèles de vue ne suivent pas les mêmes conventions que le pipeline d'actifs.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X