【发布时间】:2011-12-09 00:09:45
【问题描述】:
我想知道这是否特定于 Win7。我有一个应用程序。我在运行它时遇到了异常。然后,我更改了损坏的代码行并再次发送 Post(通过与页面交互,因为它是 PRG,而不是按 F5)。但是,我仍然得到同样的例外。我通过更改一些日志消息对此进行了测试,并得到了相同的结果:没有看到新代码。
我正在修改的代码在我的 lib 文件夹中。这似乎肯定是问题所在。但我的 application.rb 中有这个:config.autoload_paths << 'lib' 和 config.autoload_paths += Dir["#{config.root}/lib/**/"]——看起来它覆盖了它(可能是两次)。
我已经尝试了这些帖子中的解决方案:
Rails3 not reloading code in lib while in development mode
Rails 3 - how to refresh updated code
两者都不起作用。我能看到的唯一区别是我正在运行调试器并且我在 Win7 上。如果我重新启动 Mongrel,则会使用新代码。
如何让 Rails 运行时在不重新启动的情况下使用新代码?
作为参考,这是我在启动调试器时看到的:
Fast Debugger (ruby-debug-ide 0.4.17.beta8, ruby-debug-base 0.11.30.pre3) listens on 127.0.0.1:19223
=> Booting Mongrel
=> Rails 3.1.1 application starting in development on http://127.0.0.1:3001
=> Call with -d to detach
=> Ctrl-C to shutdown server
【问题讨论】:
-
您的
config/environments/development.rb文件中有什么内容?请给我们看一下好吗? -
当然,但那是 20 多行,你能说得更具体点吗?
-
也许是这个?
config.action_controller.perform_caching = false -
如果更改配置,则必须重新启动服务器。如果您不是说您配置,请添加更多详细信息
-
@Lichtamberg:“我正在修改的代码在我的 lib 文件夹中”来自 OP。
标签: ruby-on-rails ruby-on-rails-3 windows-7