J'essaye d'obtenir la fonction de cache de compteur de rails mais pas capable de le saisir complètement.Rails Counter Cache et sa mise en œuvre
Disons que nous avons 3 modèles
A B C
A appartient à B ou C en fonction d'un key_type de terrain et key_id. key_type indique si A appartient à B ou C, donc si key_type = « B », puis le dossier appartient à B sinon il appartient à C.
Dans mon modèle a.rb, j'ai défini les associations suivantes:
belongs_to :b, :counter_cache => true, :foreign_key => "key_id"
belongs_to :c, :counter_cache => true, :foreign_key => "key_id"
et
dans les fichiers de modèle B et C
has_many :as , :conditions => {:key_type => "B"}
has_many :as , :conditions => {:key_type => "C"}
les deux modèles B et C ont une colonne comme as_count
Le problème est chaque fois qu'un objet d'un nombre créé est augmenté dans les deux modèles b et c.
Toute aide est appréciée. Au départ, je pensais que cela pourrait fonctionner:
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"}
Mais cela n'aide pas.
Merci
Ceci ne doit pas être étiqueté avec "Grails". – Fletch