1. 30 5月, 2012 6 次提交
  2. 29 5月, 2012 31 次提交
  3. 28 5月, 2012 3 次提交
    • J
      Merge pull request #6517 from purcell/validates-false-value · f5e26bcb
      José Valim 提交于
      Don't enable validations when passing false hash values to ActiveModel.validates
      f5e26bcb
    • S
      Don't enable validations when passing false hash values to ActiveModel.validates · b3ccd7b2
      Steve Purcell 提交于
      Passing a falsey option value for a validator currently causes that validator to
      be enabled, just like "true":
      
          ActiveModel.validates :foo, :presence => false
      
      This is rather counterintuitive, and makes it inconvenient to wrap `validates` in
      methods which may conditionally enable different validators.
      
      As an example, one is currently forced to write:
      
            def has_slug(source_field, options={:unique => true})
              slugger = Proc.new { |r| r[:slug] = self.class.sluggify(r[source_field]) if r[:slug].blank? }
              before_validation slugger
              validations = { :presence => true, :slug => true }
              if options[:unique]
                validations[:uniqueness] = true
              end
              validates :slug, validations
            end
      
      because the following reasonable-looking alternative fails to work as expected:
      
            def has_slug(source_field, options={:unique => true})
              slugger = Proc.new { |r| r[:slug] = self.class.sluggify(r[source_field]) if r[:slug].blank? }
              before_validation slugger
              validates :slug, :presence => true, :slug => true, :uniqueness => options[:unique]
            end
      
      (This commit includes a test, and all activemodel and activerecord tests pass as before.)
      b3ccd7b2
    • J
      Merge pull request #6512 from jaredbeck/fix_number_to_currency_neg_format · 5acb10d6
      José Valim 提交于
      Fix handling of negative zero in number_to_currency
      5acb10d6