При запуске rake --tasks показывает мне
rake dev:cache # Toggle development mode caching on/off
Я знаю, что у нас есть кеш представления разработки для некоторых фрагментов. Есть ли что-то еще, для чего у Rails есть кеш?, например: запросы базы данных
Кроме того, полезно ли это, если в производственном режиме у нас также есть этот кеш?





Проверьте свой config/environments/development.rb, в приложении >= rails 5 вы сможете найти следующее:
# Enable/disable caching. By default caching is disabled.
# Run rails dev:cache to toggle caching.
if Rails.root.join('tmp', 'caching-dev.txt').exist?
config.action_controller.perform_caching = true
config.action_controller.enable_fragment_cache_logging = true
config.cache_store = :memory_store
config.public_file_server.headers = {
'Cache-Control' => "public, max-age=#{2.days.to_i}"
}
else
config.action_controller.perform_caching = false
config.cache_store = :null_store
end
Таким образом, rails dev:cache не делает ничего, кроме как просто помещает файл в <Rails.root>/tmp/caching-dev.txt, что затем включает кеширование. Вот реализация команды: https://github.com/rails/rails/pull/20961
Чтобы увидеть, как работает кэширование, ознакомьтесь с документацией по рельсам: https://guides.rubyonrails.org/caching_with_rails.html