1) validates_format_of :name, :with => /\A(\w(?:[\/'' \-\.])?)*\Z/i What does the ''i'' do at the end of the regular expression? 2) Should I do validation for attributes that are not from a form? 3) def self.up create_table :customers do |t| t.column :number, :integer, :limit => 4 end end As far as I know, Mysql 5.0.27 uses Int for number here. Will also a small number need 4 bytes in the database? --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
> validates_format_of :name, :with => /\A(\w(?:[\/'' \-\.])?)*\Z/i > > What does the ''i'' do at the end of the regular expression?/i makes a regex case-insensitive. See http://www.ruby-doc.org/core/classes/Regexp.html#M001219 for other Regexp options --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
Hi Martin, Martin Luy wrote:> 1) > validates_format_of :name, :with => /\A(\w(?:[\/'' \-\.])?)*\Z/i > > What does the ''i'' do at the end of the regular expression?It makes the match case insensitive> > > 2) > Should I do validation for attributes that are not from a form? >Yes. If you expect a field to conform to condition that is not inherent in it''s column type you should validate the data. It will catch bugs and keep you data more coherent.> > 3) > def self.up > create_table :customers do |t| > t.column :number, :integer, :limit => 4 > end > end > > As far as I know, Mysql 5.0.27 uses Int for number here. Will also a > small number need 4 bytes in the database?Yes. It really isn''t a big deal. There are ways around this, but before you go hacking into the code ask yourself if this isn''t premature optimization. unless you are storing ~10^6 rows your space savings will not be appreciable. J. F. Miller -- 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 -~----------~----~----~----~------~----~------~--~---
Martin Luy wrote:> 1) > validates_format_of :name, :with => /\A(\w(?:[\/'' \-\.])?)*\Z/i > > What does the ''i'' do at the end of the regular expression?Case-insensitive> 2) > Should I do validation for attributes that are not from a form?Depends on how much you trust yourself. Where is the data coming from?> > > 3) > def self.up > create_table :customers do |t| > t.column :number, :integer, :limit => 4 > end > end > > As far as I know, Mysql 5.0.27 uses Int for number here. Will also a > small number need 4 bytes in the database?As far as I can tell, it doesn''t matter what "limit" you give to an int in MySQL , it always uses 4 bytes. I don''t believe you have access to the various int types (bigint, smallint, mediumint) through migrations. -matthew -- 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 -~----------~----~----~----~------~----~------~--~---