Ruby / Rails创建动态方法?

时间:2014-10-24 12:31:12

标签: ruby-on-rails-4

我有一个相当大的ruby代码库,我正在尝试找到一个方法current_user_has_ownership?。当我grep它的代码库时,它在多个地方使用,但没有找到定义。当我用pry查看方法时,我得到的信息相当无益。它表明该方法在此模块中:

#<Module:0x007f9f84550200>#methods:

只是一个记忆位置。我假设rails正在为我创建方法,但我如何找到它是什么?当rails为你做这件事时,我甚至不知道它叫什么,所以我无法弄清楚要谷歌的内容。发生了什么,我在哪里可以找到一些有关它如何工作的文档?

1 个答案:

答案 0 :(得分:1)

尝试搜索def method_missingdefine_method次调用。有可能current_user_has_ownership?方法动态定义method_missing拦截

如果此代码存在于包含的gem中,则难以搜索。