2016-07-08 73 views
0

我有模块Mymodule,lib目录里面,几个方法中内Rails的自动加载的模块时,应用程序启动

module Mymodule 

    def usefull_meth(a,b) 
    a+b 
    end 

    end 

我想自动加载它,当我的应用程序开始

我已经在我的application.rb

config.autoload_paths += Dir["#{config.root}/lib/**/*"]

但我仍然需要包括它像include Mymodule

我想用我的usefull_meth(a,b)application helper,而不包括

我如何能实现我的目标是什么?或者我做错了什么?

我只是想有usefull_meth任何地方在我的助手,我不需要Mymodule.usefull_meth否则不服

回答

0

,但我仍然需要包括它像包括Mymodule中

这是怎么了Ruby的工作原理与Rails自动加载无关。

为了全局使用某种方法,您应该将其放入全局名称空间。只要删除模块定义,并只保留该文件中的方法定义(即使我不明白为什么不直接将其放入帮助程序中)。

+0

'不明白你为什么不把它变成帮手directly'必要的方法,因为它基于模块内其他计算的方法,如果可以这样说它的最终输出 – user

0

我实现我想要的

application.rb

require './lib/my_module' 
include Mymodule 

,现在我有出include Mymodule

相关问题