Sha256: e56e692b0a514bf9f73c61e4992e7f3829b56a9807dc263564fc00aabad284fa
Contents?: true
Size: 1.57 KB
Versions: 3
Compression:
Stored size: 1.57 KB
Contents
class ActiveRecord::Base # Basado en soluciones de # http://stackoverflow.com/questions/6541209/decimals-and-commas-when-entering-a-number-into-a-ruby-on-rails-form def self.flotante_localizado(*fields) fields.each do |f| define_method("#{f}_localizado") do if attribute_method?(f) val = read_attribute(f) else val = self.send(f) #read_attribute(f) end val ? val.to_s.a_decimal_localizado : nil end define_method("#{f}_localizado=") do |e| if attribute_method?(f) write_attribute(f, e.to_s.a_decimal_nolocalizado) else self.send(f.to_s + '=', e.to_s.a_decimal_nolocalizado) end end end end def self.fecha_ddMyyyy(*fields) fields.each do |f| define_method("#{f}_ddMyyyy") do val = read_attribute(f) if !val return nil end val = val.to_s a = val[0, 4] m = val[5, 2] d = val[8, 2] meses = ['Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic'] return "#{d}/#{meses[m.to_i - 1]}/#{a}" end define_method("#{f}_ddMyyyy=") do |e| val = e.to_s a = val[7, 4] nomm = val[3, 3] d = val[0, 2] meses = ['Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic'] m = 1 nm = meses.index(nomm) if nm m = 1 + meses.index(nomm) end write_attribute(f, "#{a}-#{m}-#{d}") end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
msip-2.2.0.alfa3 | lib/ext/ActiveRecord/base.rb |
msip-2.2.0.alfa2 | lib/ext/ActiveRecord/base.rb |
msip-2.2a2 | lib/ext/ActiveRecord/base.rb |