我正在使用Rails 3.1并且已经开发了一年半。今天早上我必须做点什么,现在似乎很多我的文件似乎都被缓存了。这包括视图文件,控制器和模型。
我可以在模型,控制器等方面进行更改,它不会对我的应用程序产生任何影响(在localhost:3000上运行)。我试图切换端口(例如localhost:3005),但它没有用。
我没有更改任何配置文件或在我的计算机上进行任何大的更改(Mac,Lion),但显然我必须做点什么。
重启服务器让它始终有效!有时(很少很少)更改会在不重新启动的情况下生效。
这是我的开发.rb:
# Settings specified here will take precedence over those in config/application.rb
# In the development environment your application's code is reloaded on
# every request. This slows down response time but is perfect for development
# since you don't have to restart the web server when you make code changes.
config.cache_classes = false
# Log error messages when you accidentally call methods on nil.
config.whiny_nils = true
# Show full error reports and disable caching
config.consider_all_requests_local = true
config.action_controller.perform_caching = false
# Don't care if the mailer can't send
config.action_mailer.raise_delivery_errors = false
# Print deprecation notices to the Rails logger
config.active_support.deprecation = :log
# Only use best-standards-support built into browsers
config.action_dispatch.best_standards_support = :builtin
# Raise exception on mass assignment protection for Active Record models
config.active_record.mass_assignment_sanitizer = :strict
# Log the query plan for queries taking more than this (works
# with SQLite, MySQL, and PostgreSQL)
config.active_record.auto_explain_threshold_in_seconds = 0.5
# Do not compress assets
config.assets.compress = false
# Expands the lines which load the assets
config.assets.debug = true
可能发生了什么,我该如何解决或排除故障?
答案 0 :(得分:2)
你可能没有看到你认为自己在看什么。最常见的原因:您在处理项目的副本而不是运行应用程序时正在查看的文件夹。
或者你弄乱了你的development.rb(config.cache_classes = false)。
缓存提示:此页面包含所有缓存技术。看一下有关页面缓存的内容(它甚至不通过Ruby堆栈运行)。
http://guides.rubyonrails.org/caching_with_rails.html
其他提示:将整个项目复制到新文件夹,因此操作系统的任何文件夹魔法都不会干扰。
开发日志是否没有透露任何有关正在发生的事情的提示?特别是如果你把som非法代码放在你的一个主要模型中(真的应该崩溃它)......
答案 1 :(得分:2)
我已经遇到了同样的问题。
在我的development.rb文件中添加以下行后,我的问题已经解决:
config.reload_classes_only_on_change = false
我不明白为什么这个缓存问题即将到来。两周内一切都比我遇到这个问题好。
我正在使用Textmate,也许......