2017-06-01 1 views
-3

je ne peux pas trouver la définition d'une méthode appelée on_init dans le code source d'une application Rails. Il n'y a pas de correspondance pour def on_init dans tout le code source.Rails: Une méthode non définie par « def »

Est-ce que quelqu'un sait comment je peux trouver la place la méthode est définie?

+0

'def ...' ce n'est pas seulement une façon de définir la méthode. –

+0

@ Зелёный Avez-vous des suggestions sur comment puis-je trouver la définition de la méthode? Il n'y a pas hyperlien vers la définition de méthode sur RubyMine ni – blu

+0

@blu: Essayez 'met Foo.class_eval {méthode (: on_init)}' et 'met Foo.class_eval {méthode (: on_init) .source_location}' –

Répondre

0
blu = some_object # that responds to #on_init 
blu.method(:on_init).source_location 
+0

Il est classe "Foo", qui a une ligne "on_init: bar". I tryed: 'obj = Foo.new obj.method (: on_init) .source_location' Mais il donne une erreur: ' 'méthode non définie 'on_init' pour la classe 'Foo'' – blu