Ho qualcosa di simile:Utilizzo di define_method in un modulo che viene incluso in una classe?
module MyModule
define_method(:foo){ puts "yeah!" }
end
class User
include MyModule
end
Ma questo non funziona come previsto ... Essi non sono definiti. Anche io ho bisogno di usare il modulo perché voglio distinguere i metodi da lì dai normali metodi utente. Che mi piace:
MyModule.instance_methods
Si prega di aiuto .. cosa mi manca? Ho anche provato:
module MyModule
(class << self; self; end).class_eval do
define_method(:foo){ puts "yeah!" }
end
end
che pure non funziona:/
per chiarire ... vorrei utilizzare:
User.first.foo
non
MyModule.foo
Mi sembra ok: 'modulo MyModule; end' '=> nil' ' class User; include MyModule; end' '=> Utente' 'modulo MyModule; define_method (: foo) {puts "yeah!" }; FINE' '=> #' ' User.new.foo' ' 'sì ' => quelle negative '' MyModule.instance_methods' => [" pippo "]' –