Sto cercando di ottenere la funzionalità cache contatore di rails ma non riesco a coglierla completamente.Rails Counter Cache e la sua implementazione
Diciamo che abbiamo 3 modelli
A B C
A appartiene a B o C a seconda un key_type campo e key_id. key_type dice se A appartiene a B o C quindi se key_type = "B", quindi il record appartiene a B altrimenti appartiene a C.
Nel mio modello a.rb, ho definito seguenti associazioni:
belongs_to :b, :counter_cache => true, :foreign_key => "key_id"
belongs_to :c, :counter_cache => true, :foreign_key => "key_id"
e
in B e C file modello
has_many :as , :conditions => {:key_type => "B"}
has_many :as , :conditions => {:key_type => "C"}
Sia B e C modelli hanno una colonna come as_count
Il problema è ogni volta che un oggetto di un conteggio viene incrementato in entrambi i modelli be c.
Qualsiasi aiuto è apprezzato. Inizialmente pensavo che questo potesse funzionare:
belongs_to :b, :counter_cache => true, :foreign_key => "key_id", :conditions => {:key_type => "B"}
belongs_to :c, :counter_cache => true, :foreign_key => "key_id", :conditions => {:key_type => "C"}
Ma questo non aiuta.
Grazie
Questo non dovrebbe essere contrassegnato con "graal". – Fletch