我写了一个寻找config/配置文件的gem .这工作正常,但如果用户更改任何配置,他们必须停止程序并在我的gem加载新配置之前再次启动它.这将要求他们在每次更改时重新启动整个rails应用程序,这并不理想.
有没有办法"重新要求"一个文件,以便它新鲜加载它而不是使用缓存版本.
sep*_*p2k 47
你可以用load而不是require.这将加载文件,无论之前是否已加载.请注意,load您需要指定.rb可选的扩展名require.因此require "path/to/myconfig"变得load "path/to/myconfig.rb".
请注意,这不会取消定义先前配置定义的任何内容.因此,如果配置是从改变$verbose = true; $debug = true到$verbose = false,然后$verbose会是假的,但$debug仍然会重新加载配置后真.
当然load,每次重新加载配置文件时(即在某个方法或钩子内部),您都需要将语句放在将要执行的位置.
| 归档时间: |
|
| 查看次数: |
5559 次 |
| 最近记录: |