Load file into text field?

The first bit is easy. "@text = File.read(filename)" in the
controller, and use it somewhere in your view to show it.

The second bit can be done in a couple of ways.

The easier one is to have the client poll the server for changes, and
send the new text when it has. Take a look at
periodically_call_remote with the :update option. If your file is
large, you'll want to have the client send the timestamp of the most
recent version of the file it has received and check it to avoid
sending the whole file each time.

The harder way is to push the data out the client periodically. This
is a well-known problem without a straightforward solution AFAIK.
There's a technique dubbed Comet, which is Flash-based. Or you could
try keeping the HTTP connection open somehow. I think this has been
discussed here recently; you could try searching the archives if this
interests you.

Have a look here:


I’ve only just seen it myself, so not sure if it’s what you want. I’ll let you decide!


That would not be very efficient, no. If the file is only being
appended to, you could send the last file size instead, and only send
the extra bytes.

In fact, if you're after a "tail -f" sort of functionality, there was
a thread on this recently: http://rubyurl.com/9n4 .

Ruby can certainly read from fifos -- check the IO docs. If you're
going to poll the server, I think you'd have an added complication in
that each AJAX update request handler needs to access the same fifo
somehow. This is quite a complicated road to be going down though