Próbuję uaktualnić do rails 4 beta 1, ale mam mały problem.niezdefiniowana metoda "caches_action" dla ApplicationController: Class
Krótko mówiąc, wygląda jak mój kontroler aplikacji.
class ApplicationController < ApplicationController
caches_action :method
end
caches_action
się wyprowadziła do własnej klejnot w Rails 4, więc w tym klejnotu powinno rozwiązać problem.
gem "actionpack-action_caching", github: "rails/actionpack-action_caching"
Ale kiedy uruchamiam specyfikacje zapytań lub odwiedzam aplikację w przeglądarce, pojawia się ten błąd.
app/controllers/application_controller.rb:3:in `<class:ApplicationController>': undefined method `caches_action' for ApplicationController:Class (NoMethodError)
Dlaczego tak jest?
- Szyny 4.0.0.beta1
- Ruby 2.0.0
- rspec 2.13.1
Po prostu z ciekawości, czy "wymagałeś" actionpack-action_caching'' przed użyciem 'cache_action'? – mudasobwa
Po prostu wypróbowałem 'gem 'actionpack-action_caching', github: 'rails/actionpack-action_caching', wymaga:" actionpack-action_caching "', co spowodowało 'nie może załadować takiego pliku - actionpack-action_caching (LoadError)' – Oleander
Oooups przepraszam. Rzuciłem okiem na kod, musisz 'wymagać actionpack/action_caching' zamiast' require 'actionpack-action_caching'' (slash zamiast minus). Ponieważ buforowanie nie jest już częścią rdzenia, musisz jawnie " wymagają 'go na górze każdego pliku, w którym go używasz. – mudasobwa