Sha256: 09cf8cfb33b4da4c3fed7b0088e46c8d408d6e725fb2a9c52aa65b87a0fdeef6
Contents?: true
Size: 1.99 KB
Versions: 3
Compression:
Stored size: 1.99 KB
Contents
= IdentityMap Adds simple hand controlled identity map for ActiveRecord. == Installing in Rails 2.3 in config/environment.rb config.gem 'ar-simple-idmap', :lib => 'identity_map' in Rails 3 in Gemfile gem 'ar-simple-idmap', :require => 'identity_map' == Enabling To enable in ApplicationController (it is not enabled by default). class ApplicationController < ActionController::Base use_identity_map #(installs around filter) # or use_identity_map :only=>[:index, :show] # or use_identity_map :except=>[:update] end If you decide to disable filter in sub controllers: class ClientController < ApplicationController dont_use_identity_map :only=>[:save, :update, :messy_action] end Then you should enable identity map for each model class individually: class TarifPlan < ActiveRecord::Base use_id_map has_many :clients end class Client < ActiveRecord::Base use_id_map belongs_to :tarif_plan end You can use identity map for all models by writing in initializer: class ActiveRecord::Base use_id_map end To enable in rake task or script: ActiveRecord::Base.with_id_map do # all things here goes with identity map end or equivalently Client.with_id_map do # all things here goes with identity map # not only for Client end If you found that identity logic does wrong thing in some particular place, you could temporary disable it: ActiveRecord::Base.without_id_map do # all things here goes without identity map end Client.without_id_map do # all things here goes without identity map # not only for Client end class ClientsController def strange_action without_identity_map do do_strange_things_without_identity_map end end end == Copyright inspired by http://github.com/pjdavis/identity-map Copyright (c) 2010 Sokolov Yura aka funny_falcon, released under the MIT license.
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
ar-simple-idmap-0.3.1 | README |
ar-simple-idmap-0.3.0 | README |
ar-simple-idmap-0.2.4 | README |