Rails:如何在每次刷新时重新加载?

时间:2012-04-17 18:14:49

标签: ruby-on-rails ruby-on-rails-3

我注意到,当我在模型上加上require "digest/sha1"密码哈希,每次我在我的应用中进行了一些更改时,我必须重新启动服务器以查看更改。

这有点烦人,它正在减慢开发速度,特别是像我这样的初学者。

我已经看到某个位置require_dependency "digest/sha1"它应该可以正常工作,但它对我不起作用(说没有文件错误)。

我不知道哪里放require_dependency,因为我没有找到任何例子。

应该有一些方法可以让它发挥作用,因为这是一个很常见的问题,也许我只是想找错地方。

由于

编辑:

我得出结论,当我的Ubuntu机器进入睡眠状态时出现错误。唤醒后,本地服务器(尝试瘦和WEBrick)给出了该错误。

编辑:

它与Ubuntu睡眠无关。我有一个名为hash的函数,它每次都会出错,抱怨它的参数数量错误,但该函数从未调用过。

所以,我已将其重命名为encrypt,现在它正在运行,但我不是100%确定它是解决方案,我必须测试更多。

如果没问题,那将是一个奇怪的错误,我会发一个答案。

2 个答案:

答案 0 :(得分:0)

在开发模式下,默认情况下,app/config/routes.rb中的任何内容都会在请求之间重新加载。如果您没有这样做,那可能不是由需求引起的。你不太可能无意中关闭了重装。

之前我曾在许多项目中使用digest/sha1并且从未遇到过此问题,通常将其包含在使用它的用户模型中。

你能在一个全新的Rails项目中复制这个问题吗?如果删除该行,问题是否会消失?如果这样的话很奇怪。

答案 1 :(得分:0)

如果删除require "digest/sha1"一切正常吗?
无论如何,检查config.cache_classes = false

中的config/environments/development.rb