Problem z caches_page

Mam w aplikacji pewien kontroler, a w nim trzy metody:

[code]class MessagesController < ApplicationController
caches_page :list, :show, :last

def list
@messages = Messages.find(:all,
:order => “created_at DESC”)
end

def show
@messages = Messages.find(params[:id])
end

def last
@messages = Messages.find(:all,
:order => “created_at DESC”,
:limit => 5)
end
end[/code]
Cache działa z metodami :list i :show, a nie działa w przypadku metody :last.
Proces fcgi restartowałem po zmianach w pliku. Nie bardzo mam pomysł, co jest nie tak.

Już sobie poradziłem. Okazało się, że akcja last nie była cache’owana ponieważ w routes.rb zdefiniowałem ją jako domyślną dla aplikacji:

map.connect '', :controller => "messages", :action => "last"

Rozwiązałem to w ten sposób, że w powyższym kodzie zmieniłem “last” na “index”, a w kontrolerze wpisałem wywołanie “last” w akcji “index”:

def index recent render :action => 'last' end