hi, new to ruby/rails (where have i been) trying to add a basic static method to a model class... anything besides the normal: def self.method_name(method_args) if method_args == "foo" result = true else result = false end result end which i should know? do i have to do something to have rails recognise the addition of a class method like restart the server (which i have tried to no avail). sorry for such a basic question. i am trying to let go of php. tom.
on 2009-03-15 04:08
on 2009-03-15 04:35
How are you calling it? What I see there appears to be correct... class Foo def self.bar(opt) if opt == "one" return true else return false end end end puts Foo.bar("one") puts Foo.bar("two") $ ruby /tmp/foo.rb true false
on 2009-03-15 04:52
Michael Graff wrote: thanks - turns out it was irb not reloading classes. i just discovered irb>> load 'measure.rb' will load any changes you have made to 'measure.rb' if you are using irb to poke through your rails thanks again, tom
on 2009-03-16 02:32
On Mar 15, 3:52 am, Tom Jay <rails-mailing-l...@andreas-s.net> wrote: > Michael Graff wrote: > > thanks - turns out it was irb not reloading classes. i just discovered > > irb>> load 'measure.rb' > > will load any changes you have made to 'measure.rb' if you are using irb > to poke through your rails > There are some subtleties to this. It loads measure.rb again, so if you have added a method or change a method then those changes will take effect. It won't however remove a method you deleted. Things like validations etc will get applied a second time and so on. If you want to do the same sort of reloading that rails does between requests then (and this is specific to script/console) you can run reload! Fred