Hello! I need to display images stored in a MS-SQL database but I get the following error: NoMethodError (undefined method `unpack'' for #<Array:0x48cbff0>): c:/ruby/lib/ruby/1.8/base64.rb:59:in `decode64'' I guess its because MS-SQL delivers an arry... Is there a solution to this problem?? Please help me! lacky -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
> NoMethodError (undefined method `unpack'' for #<Array:0x48cbff0>): > c:/ruby/lib/ruby/1.8/base64.rb:59:in `decode64''From this is looks to me like some code is attempting to decode the image data from Base64. Are you sure your image data is encoded using Base64? I tend to doubt it. MS-SQL is likely just storing the raw binary data. So it makes sense the you would have an array of bytes. It would be helpful if you could post the code that you''re using to display the image. Normally in RoR there is a method that returns the raw image data from a request with the proper content-type header. For example the content-type header for a JPEG would be image/jpeg. Somehow your application needs to tell the browser what the binary data represents. It could be pretty much anything (JPEG, GIF, PDF, etc). This is typically accomplished using the send_data method. Here''s an example: def sales_graph png_data = Sales.plot_for(Date.today.month) send_data(png_data, :type => "image/png", :disposition => "inline") end Günther Lackner wrote:> Hello! > > I need to display images stored in a MS-SQL database but I get the > following error: > > NoMethodError (undefined method `unpack'' for #<Array:0x48cbff0>): > c:/ruby/lib/ruby/1.8/base64.rb:59:in `decode64'' > > I guess its because MS-SQL delivers an arry... > > Is there a solution to this problem?? > > Please help me! > lacky-- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Hello! Thanks for your reply. The function in the controller looks like this: def get_front_image device = Device.find(:first, :conditions => ["ID1 = ?", params[:id]]) @front = device.THUMBFRONT send_data (@front,:type => ''image/gif'', :filename => ''front_view.gif'', :disposition => ''inline'') end You might be right, it could be a byte array... but how can I display it?? best regards lacky Robert Walker wrote:>> NoMethodError (undefined method `unpack'' for #<Array:0x48cbff0>): >> c:/ruby/lib/ruby/1.8/base64.rb:59:in `decode64'' > > From this is looks to me like some code is attempting to decode the > image data from Base64. Are you sure your image data is encoded using > Base64? I tend to doubt it. MS-SQL is likely just storing the raw binary > data. So it makes sense the you would have an array of bytes. > > It would be helpful if you could post the code that you''re using to > display the image. Normally in RoR there is a method that returns the > raw image data from a request with the proper content-type header. For > example the content-type header for a JPEG would be image/jpeg. > > Somehow your application needs to tell the browser what the binary data > represents. It could be pretty much anything (JPEG, GIF, PDF, etc). This > is typically accomplished using the send_data method. > > Here''s an example: > def sales_graph > png_data = Sales.plot_for(Date.today.month) > send_data(png_data, :type => "image/png", :disposition => "inline") > end > > Günther Lackner wrote: >> Hello! >> >> I need to display images stored in a MS-SQL database but I get the >> following error: >> >> NoMethodError (undefined method `unpack'' for #<Array:0x48cbff0>): >> c:/ruby/lib/ruby/1.8/base64.rb:59:in `decode64'' >> >> I guess its because MS-SQL delivers an arry... >> >> Is there a solution to this problem?? >> >> Please help me! >> lacky-- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Hi all! I FOUND A SOLUTION!!! Just follow this article: http://blog.mcmoyer.com/2007/9/18/using-ms-sqlserver-with-rails best regards Lacky -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---