Multiple render :text, live

K

knohr

<disclaimer>I'm new to rails and ruby</disclaimer>
Sorry for the x-post.

I am using "activescaffold" and have a model that takes some time to
complete, I would like to have it update the page multiple times while
'foo' runs.

basically i have the following

def foo
render :text => "starting"
......
end

It displays the text properly, but not untill 'foo' has completed.

What I would like to do is something like the following.

def foo
render :text => "starting"
....
render :text => "#{iteration} / #{total_iterations}"
....
render :text => "complete"
end
 
R

Rick DeNatale

<disclaimer>I'm new to rails and ruby</disclaimer>
Sorry for the x-post.

I am using "activescaffold" and have a model that takes some time to
complete, I would like to have it update the page multiple times while
'foo' runs.

You'd be much better asking on the rails google group but:
basically i have the following

def foo
render :text => "starting"
.....
end

I assume that you mean that this is in the controller not the model.
It displays the text properly, but not untill 'foo' has completed.

What I would like to do is something like the following.

def foo
render :text => "starting"
...
render :text => "#{iteration} / #{total_iterations}"
...
render :text => "complete"
end

You're only allowed one render call per controller action. If you call
render a second time you'll get a DoubleRenderError exception.

A controller action processes a single http(s) request, and returns
one response, this is inherent in the design of the http protocol. If
you've got a copy of Active Web Development with Rails, and if you
don't, you should, this is described on page 426 of the second
edition.

If you want to dynamically update the browser display you need to
explore techniques like using AJAX to have the browser poll for
updates.

And that's DEFINITELY a topic for the rails specific group rather than
ruby-talk.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,755
Messages
2,569,534
Members
45,007
Latest member
obedient dusk

Latest Threads

Top