Forum: Italian Ruby user group classi aperte in ror

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Luigi M. (Guest)
on 2008-12-03 17:05
(Received via mailing list)
Ciao a tutti,

voglio definire un metodo per la classe Float che arrotondi alla n-esima
cifra decimale:
ho guardato in giro ed ho trovato questo esempio che sfrutta il fatto
che in ruby le classi sono aperte e che quindi posso
aggiungere/sovrascrivere metodi:

class Float
    def round(precision = nil)
        if precision.nil? then
            super()
        else
            if precision.is_a? Integer and precision > 0 then
                decimals = 10 ** precision
                (self * decimals).round / decimals.to_f
            else
                raise ArgumentError.new("Argument must be a positive
integer")
            end
        end
    end
end



in un'applicazione ruby on rails dove definisco questa classe per
utilizzare questo metodo in una action ? Dove apro questa definizione di
classe ?


Grazie.

Luigi
Pierpaolo S. (Guest)
on 2008-12-03 17:50
(Received via mailing list)
Ciao,
puoi creare un file float_ext.rb ed inserirlo nella directory lib della
tua
applicazione, poi nel file enviroment.rb aggiungi questa riga
require 'float_ext'
ciao

Il giorno 3 dicembre 2008 15.56, Luigi M. <removed_email_address@domain.invalid> 
ha
scritto:
Luigi M. (Guest)
on 2008-12-03 18:58
(Received via mailing list)
Ok, grazie...... !! :)

Luigi

Pierpaolo S. ha scritto:
Pierpaolo S. (Guest)
on 2008-12-03 21:20
(Received via mailing list)
Prima non ci avevo fatto caso, ma il metodo round esiste giĆ  in Rails
precisamente in
ActiveSupport::CoreExtensions::Float::Rounding

Il giorno 3 dicembre 2008 18.00, Luigi M. <removed_email_address@domain.invalid> 
ha
scritto:
This topic is locked and can not be replied to.