我有一个ConstData类:

class ConstData

  US_CITIES = ['miami', 'new york']

  EUROPERN_CITIES = ['madrid', 'london']

end


它存储在/lib/const_data.rb下

这个想法是在模型,控制器或视图中,我可以执行以下操作:

ConstData::US_CITIES获取US_CITIES等

Rails应该自动加载该类,我从以下途径获得此信息:
http://groups.google.com/group/rubyonrails-talk/browse_thread/thread/662abfd1df9b2612?hl=en

但是,这不起作用。谁能解释我如何做到这一点?

最佳答案

@daniel所指的帖子来自2008年。Rails从那时起发生了变化。
实际上,最近。 Rails3不会自动加载lib /目录。

您可以很容易地重新激活它。打开config/application.rb并在配置中(Application类中)添加以下代码:

config.autoload_paths += %W(#{config.root}/lib)


然后,您的lib /目录将被自动加载。

关于ruby-on-rails - Rails 3自动加载,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4073856/

10-13 02:16