I get the file size of images by imgmb = File.size("#{RAILS_ROOT}/..../#{file}") But that''s when I have the file on the server. Can you test that before in order to stop the file upload if it''s really heavy? How does that work? -- 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 -~----------~----~----~----~------~----~------~--~---
On 17 Apr 2009, at 14:45, Pål Bergström wrote:> > I get the file size of images by > > imgmb = File.size("#{RAILS_ROOT}/..../#{file}") > > But that''s when I have the file on the server. Can you test that > before > in order to stop the file upload if it''s really heavy? How does that > work?It has to be done upstream of rails (apache has a file upload limit for example). Fred> > -- > 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 -~----------~----~----~----~------~----~------~--~---
Frederick Cheung wrote:> On 17 Apr 2009, at 14:45, P�l Bergstr�m wrote: > >> >> I get the file size of images by >> >> imgmb = File.size("#{RAILS_ROOT}/..../#{file}") >> >> But that''s when I have the file on the server. Can you test that >> before >> in order to stop the file upload if it''s really heavy? How does that >> work? > > It has to be done upstream of rails (apache has a file upload limit > for example). > > FredSorry for a stupid question, but do you mean when it has arrived to the server? -- 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 -~----------~----~----~----~------~----~------~--~---
How are the files loaded onto the server? For example, if they are coming in from users as email attachments you could use attachment_fu to set the maximum size in the model: class Photo < ActiveRecord::Base has_attachment :storage => :file_system, . . :size => 1..5.megabytes validates_as_attachment end (paperclip probably has similar functionality but I have not personal experience with it) On Apr 17, 3:45 am, Pål Bergström <rails-mailing-l...-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org> wrote:> I get the file size of images by > > imgmb = File.size("#{RAILS_ROOT}/..../#{file}") > > But that''s when I have the file on the server. Can you test that before > in order to stop the file upload if it''s really heavy? How does that > work? > -- > Posted viahttp://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 -~----------~----~----~----~------~----~------~--~---
Just for clarification, this will not prevent the file being uploaded into the server''s memory but it will prevent it from being saved to the file system. On Apr 17, 9:16 am, Rick <Richard.T.Ll...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> How are the files loaded onto the server? > > For example, if they are coming in from users as email attachments you > could use attachment_fu to set the maximum size in the model: > > class Photo < ActiveRecord::Base > has_attachment :storage => :file_system, > . > . > :size => 1..5.megabytes > validates_as_attachment > end > > (paperclip probably has similar functionality but I have not personal > experience with it) > > On Apr 17, 3:45 am, Pål Bergström <rails-mailing-l...-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org> > wrote: > > > I get the file size of images by > > > imgmb = File.size("#{RAILS_ROOT}/..../#{file}") > > > But that''s when I have the file on the server. Can you test that before > > in order to stop the file upload if it''s really heavy? How does that > > work? > > -- > > Posted viahttp://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 -~----------~----~----~----~------~----~------~--~---
Just to clarify further. If the file is large enough, it WON''T be kept in memory, instead it will be written to a temp file and the handle for that will be passed in the params. I don''t know of any way inside Rails to stop a file being uploaded, but suspect you could get the web server to limit how much it would upload for a single request. Brendon. On Apr 17, 12:19 pm, Rick <Richard.T.Ll...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> Just for clarification, this will not prevent the file being uploaded > into the server''s memory but it will prevent it from being saved to > the file system. > > On Apr 17, 9:16 am, Rick <Richard.T.Ll...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > > How are the files loaded onto the server? > > > For example, if they are coming in from users as email attachments you > > could use attachment_fu to set the maximum size in the model: > > > class Photo < ActiveRecord::Base > > has_attachment :storage => :file_system, > > . > > . > > :size => 1..5.megabytes > > validates_as_attachment > > end >--~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
Brendon Whateley wrote:> Just to clarify further. If the file is large enough, it WON''T be > kept in memory, instead it will be written to a temp file and the > handle for that will be passed in the params. I don''t know of any way > inside Rails to stop a file being uploaded, but suspect you could get > the web server to limit how much it would upload for a single request. > > Brendon.Good to know. I use Litespeed. I''ll check the server settings. What I don''t understand is how this actually works, so just a quick follow-up question – that I guess is more related to the basics of file handling in Ruby. I see that it comes into the server as a ruby object. Isn''t that a temp-file? I thought that it always was a temp-file. Can I use File.size(file) on that or do I have to File.open() first? -- 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 -~----------~----~----~----~------~----~------~--~---