How to refresh Image through ajax request


#1

Hi all ,
I am very new for ruby. I am using Ajax Request(Rmagick in controller)
for changing image on my DIV but the problem is it refresh for first
time only then after i have to refresh the browser always. If anybody
having any solution, Please let me know . I am posting my code here

Code in rhtml file

<%= form_remote_tag({:url=>{:controller=>‘image_builders’, :action
=>‘index’}, :update =>‘photo’})%>


Type
<%= submit_tag 'Create Image' %>
Image:
      <div id="photo" style="width:99%;">

      </div>
      </div>

===============================================================================
code in controller

def index
@Rows =20
@Cols = 120
@alpha = params[:alpha].to_i
@margin = params[:margin].to_i
if params[:height].to_i >9000 || params[:width].to_i > 9000
if params[:height].to_i >9000
params[:height] = 8999
end
if params[:width].to_i > 9000
params[:width] = 8999
end
end
if params[:height] && params[:width]
@Rows =params[:height].to_i
@Cols = params[:width].to_i
end
@Start = params[:input_field_1]
@End = params[:input_field_2]
if params[:type] == ‘gradation’
fill = Magick::GradientFill.new(0, 0, 0, @Cols, @Start, @End)
img = Magick::Image.new(@Rows, @Cols, fill)
img.opacity = @alpha/ 127.0 * Magick::TransparentOpacity if
@alpha != 0
img_new = img.rotate(90)
if params[:reverse]
img_rev = img_new.rotate(270)
img_rev.write(“public/images/xyz.jpg”)
render :text => “
else
img_new.write(“public/images/xyz.jpg”)
render :text => “
end
end
end


#2

On Jan 16, 2009, at 07:25 , Kumar S. wrote:

I am very new for ruby. I am using Ajax Request(Rmagick in controller)
for changing image on my DIV but the problem is it refresh for first
time only then after i have to refresh the browser always. If anybody
having any solution, Please let me know . I am posting my code here

pls ask these q’s in the rubyonrails forums/lists.


#3

Ryan D. wrote:

On Jan 16, 2009, at 07:25 , Kumar S. wrote:

I am very new for ruby. I am using Ajax Request(Rmagick in controller)
for changing image on my DIV but the problem is it refresh for first
time only then after i have to refresh the browser always. If anybody
having any solution, Please let me know . I am posting my code here

pls ask these q’s in the rubyonrails forums/lists.

I don’t have access of that forum due to lost of the password and i
think it belongs to this forum also so i put it here.
Thanks


#4

Kumar S. wrote:

Ryan D. wrote:

On Jan 16, 2009, at 07:25 , Kumar S. wrote:

I am very new for ruby. I am using Ajax Request(Rmagick in controller)
for changing image on my DIV but the problem is it refresh for first
time only then after i have to refresh the browser always. If anybody
having any solution, Please let me know . I am posting my code here

pls ask these q’s in the rubyonrails forums/lists.

I don’t have access of that forum due to lost of the password and i
think it belongs to this forum also so i put it here.
Thanks

Sorry i misunderstood.

Thanks for the suggestion


#5

On Jan 17, 2:33 am, Kumar S. removed_email_address@domain.invalid wrote:

I don’t have access of that forum due to lost of the password and i
think it belongs to this forum also so i put it here.
Thanks

Sorry i misunderstood.

Thanks for the suggestion

Posted viahttp://www.ruby-forum.com/.

Have you tried: periodically_call_remote?

or (non-AJAX):


#6

AGoofin wrote:

On Jan 17, 2:33�am, Kumar S. removed_email_address@domain.invalid wrote:

I don’t have access of that forum due to lost of the password and i
think it belongs to this forum also so i put it here.
Thanks

Sorry i misunderstood.

Thanks for the suggestion

Posted viahttp://www.ruby-forum.com/.

Have you tried: periodically_call_remote?

or (non-AJAX):

Hi
As i sent you code i have to refresh the whole form not a single element
. So please let me know if you have any solution regarding to whole
form.

Thanks in Advance.


#7

Albert S. wrote:

Kumar S. wrote:

I am using Ajax Request(Rmagick in controller)
for changing image on my DIV but the problem is it refresh for first
time only
[…]
render :text => “

Perhaps the browser caches this image. The browser isn’t aware that it
has changed. I suggest you add some random string to the image’s URL.
E.g. /image/xyz.jpg?56543653.

Hi i just hard code the path like “public/images/xyz.jpg?1234” but after
that i get the following error

no encode delegate for this image format `public/images/xyz.jpg?1234’

RAILS_ROOT: C:/Myworkspace/css_menu_builder - import
Application Trace | Framework Trace | Full Trace

app/controllers/image_builders_controller.rb:68:in write' app/controllers/image_builders_controller.rb:68:inindex’

So please help me how can i add any random string after the URL
Please let me help …
Thanks in advance


#8

On Jan 19, 2009, at 02:30 , Kumar S. wrote:

So please help me how can i add any random string after the URL
Please let me help …

this DOES NOT belong on this list.


#9

Kumar S. wrote:

I am using Ajax Request(Rmagick in controller)
for changing image on my DIV but the problem is it refresh for first
time only
[…]
render :text => “

Perhaps the browser caches this image. The browser isn’t aware that it
has changed. I suggest you add some random string to the image’s URL.
E.g. /image/xyz.jpg?56543653.


#10

Kumar S. wrote:

Albert S. wrote:

Kumar S. wrote:
[…]

    render :text => "<img src='/images/xyz.jpg' />"

Perhaps the browser caches this image. The browser isn’t aware that it
has changed. I suggest you add some random string to the image’s URL.
E.g. /image/xyz.jpg?56543653.

Hi i just hard code the path like “public/images/xyz.jpg?1234” but after
that i get the following error

no encode delegate for this image format `public/images/xyz.jpg?1234’

You added that random string in img_rev.write(). No good. Add it to the
URL. In other words, add it in the tag. You need to send the
browser ‘’ instead of just ‘’.


#11

Ryan D. wrote:

On Jan 19, 2009, at 02:30 , Kumar S. wrote:

So please help me how can i add any random string after the URL
Please let me help …

this DOES NOT belong on this list.

I’m not sure it doesn’t belong here. It’s an HTML/HTTP issue, not a
Rails one. It doesn’t involve the Rails API, AFAICS. But I’ll submit to
your judgment and forward Kumar to that other list in my next reply.


#12

Albert S. wrote:

Perhaps the browser caches this image. The browser isn’t aware that it
has changed. I suggest you add some random string to the image’s URL.
E.g. /image/xyz.jpg?56543653.

Why not use image_path()? Then the number is not random, but a time
signature,
right?


#13

Albert S. wrote:

Kumar S. wrote:

Albert S. wrote:

Kumar S. wrote:
[…]

    render :text => "<img src='/images/xyz.jpg' />"

Perhaps the browser caches this image. The browser isn’t aware that it
has changed. I suggest you add some random string to the image’s URL.
E.g. /image/xyz.jpg?56543653.

Hi i just hard code the path like “public/images/xyz.jpg?1234” but after
that i get the following error

no encode delegate for this image format `public/images/xyz.jpg?1234’

You added that random string in img_rev.write(). No good. Add it to the
URL. In other words, add it in the tag. You need to send the
browser ‘’ instead of just ‘’.

Hi i solved out that problem through your suggestion
Thanks. Thanks a lot

And Hi Ryan
I am ensuring you that i will try to post in the right list

Thanks for your support also.