AJAX in Ruby on Rails


#1

I’m having some trouble getting AJAX working properly for me in Rails.
I’ve
tried the example in “Agile Web D. with Rails” on page 391
using
form_remote_tag(), and instead of updating a

like it should, it
renders the form as an entirely new page. I’ve tried in on Windows XP
and
OS X 10.4, WEBrick and Apache, using IE and Firefox, and to no avail.

For those who don’t have the book, the problem is essentially:

I have a controller with:

def index
end

def blah
@stuff = ‘should print’
render :partial => ‘form’
end

index.rhtml:

Display me!

<%= render(:partial => 'form') %>

_form.rhtml:
<% if @stuff %>

<%= @stuff %>
<% end %>

<%= form_remote_tag(:update => “update_me”, :url => { :action => :blah }
)
%>
blah blah blah
<%= end_form_tag %>

When you submit the form, the

Display me!

part doesn’t show
again.
The render :partial => ‘form’ from the ‘blah’ action just renders the
form
and doesn’t update the “update_me”
section. The WEBrick output is
as
follows:

127.0.0.1 - - [12/Dec/2005:10:43:28 Eastern Standard Time] “GET
/guesswhat
HTTP/1.1” 200 851

  • -> /guesswhat

127.0.0.1 - - [12/Dec/2005:10:43:28 Eastern Standard Time] “GET
/favicon.ico
HTTP/1.1” 200 0

  • -> /favicon.ico

127.0.0.1 - - [12/Dec/2005:10:43:32 Eastern Standard Time] “POST
/guesswhat/guess HTTP/1.1” 200 623

http://localhost:3000/guesswhat -> /guesswhat/guess

Notice the difference between the first and third actions:

Does anyone know what the problem is? I hope this isn’t too
confusing…
it’s hard to explain. If you have the book you can run the example
yourself
and see what you encounter.

Thanks in advance,
Charlie


#2

Just to save someone a post… I know there’s a Rails list, but I have
limited access to it from work (where I am now).

“Charlie S.” removed_email_address@domain.invalid wrote in message
news:dnk9db$n8i$removed_email_address@domain.invalid…


#3

Charlie S. wrote:

Just to save someone a post… I know there’s a Rails list, but I have
limited access to it from work (where I am now).

Try www.ruby-forum.com. It mirrors the Rails mailing list and allows
posting.