Я делал подобные вещи, используя фильтр before и таблицу page_views
.
Вот миграция для создания таблицы:
class PageViews < ActiveRecord::Migration
def change
create_table :page_views do |t|
t.string :controller
t.string :action
t.timestamps
end
end
end
И модель класса: /app/models/page_view.rb
:
class PageView < ActiveRecord::Base
attr_accessible :action, :controller
end
Затем в application_controller добавьте before_filter
для вставки записи с каждым запросом:
class ApplicationController < ActionController::Base
before_filter :track_page_request
def track_page_request
PageView.create({:controller => params[:controller], :action => params[:action]})
end
end