我注意到,当我在模型上加上require "digest/sha1"
密码哈希,每次我在我的应用中进行了一些更改时,我必须重新启动服务器以查看更改。
这有点烦人,它正在减慢开发速度,特别是像我这样的初学者。
我已经看到某个位置require_dependency "digest/sha1"
它应该可以正常工作,但它对我不起作用(说没有文件错误)。
我不知道哪里放require_dependency
,因为我没有找到任何例子。
应该有一些方法可以让它发挥作用,因为这是一个很常见的问题,也许我只是想找错地方。
由于
编辑:
我得出结论,当我的Ubuntu机器进入睡眠状态时出现错误。唤醒后,本地服务器(尝试瘦和WEBrick)给出了该错误。
编辑:
它与Ubuntu睡眠无关。我有一个名为hash
的函数,它每次都会出错,抱怨它的参数数量错误,但该函数从未调用过。
所以,我已将其重命名为encrypt
,现在它正在运行,但我不是100%确定它是解决方案,我必须测试更多。
如果没问题,那将是一个奇怪的错误,我会发一个答案。
答案 0 :(得分:0)
在开发模式下,默认情况下,app/
或config/routes.rb
中的任何内容都会在请求之间重新加载。如果您没有这样做,那可能不是由需求引起的。你不太可能无意中关闭了重装。
之前我曾在许多项目中使用digest/sha1
并且从未遇到过此问题,通常将其包含在使用它的用户模型中。
你能在一个全新的Rails项目中复制这个问题吗?如果删除该行,问题是否会消失?如果这样的话很奇怪。
答案 1 :(得分:0)
如果删除require "digest/sha1"
一切正常吗?
无论如何,检查config.cache_classes = false
config/environments/development.rb