Something strange about RJS, please help.

2 views
Skip to first unread message

ms

unread,
Nov 11, 2008, 9:33:55 AM11/11/08
to Ruby on Rails: Talk
Hello,

thanks for reading this. :) I've got some problems with RJS in
separate files. What's the correct extension? When I name it *.rjs /
*.js.rjs, Ruby on Rails complains that it in not able to find a
*.js.erb template. But when I name it *.js.erb, nothing is translated
to javascript, only the raw text is given back to the client. When I
try inline RJS directly in my controllers with "render :update ...",
it runs perfectly. What am I doing wrong?

Really thank you for any answers.
ms

Thorsten Müller

unread,
Nov 11, 2008, 9:49:08 AM11/11/08
to Ruby on Rails: Talk
The right naming is *.js.rjs

At the end of the controller you need:

respond_to do |format|
format.js
end

to make that work

Nick

unread,
Nov 11, 2008, 10:55:30 AM11/11/08
to Ruby on Rails: Talk
Keep this bug report in mind if you're calling #render_to_string
before the default view is rendered:
http://rails.lighthouseapp.com/projects/8994/tickets/870-js-rjs-views-no-longer-found-after-render_to_string-call

The solution is to rename the default view to filename.rjs (as opposed
to filename.js.rjs).

Cheers,
Nick
Reply all
Reply to author
Forward
0 new messages