तो मेरे पास 2 अलग-अलग मॉडल, टिप्पणियां और उत्तर वाले ऐप हैं, जिनमें से प्रत्येक आप सहमत या असहमत हो सकते हैं, इसलिए मेरे पास इमोशन नामक एक पॉलिमॉर्फिक मॉडल है।पॉलिमॉर्फिक रिश्तों और काउंटर कैश
class Comment < ActiveRecord::Base
belongs_to :user
has_many :replies
has_many :emotions, :as => :emotionable
end
class Reply < ActiveRecord::Base
belongs_to :user
belongs_to :comment
has_many :emotions, :as => :emotionable
end
class Emotion < ActiveRecord::Base
belongs_to :emotionable, :polymorphic => :true
end
तो यह सब ठीक काम करता है, लेकिन मैं प्रत्येक के लिए असहमत की इससे सहमत दोनों टिप्पणी के लिए एक काउंटर कैश जोड़ सकते हैं और क्रम में उत्तर दें आकार पाने के लिए की जरूरत है और करने के लिए जा रहा हूँ: यहाँ इन के लिए मेरे कोड है वस्तु। सभी दस्तावेज़ों में, इसमें सामान्य पॉलिमॉर्फिक एसोसिएशन के साथ काउंटर कैश करने के उदाहरण हैं, इसमें कोई अतिरिक्त शर्त नहीं है।
create_table "emotions", :force => true do |t|
t.integer "user_id"
t.string "emotion"
t.integer "emotionable_id"
t.string "emotionable_type"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
टी एल: संदर्भ के लिए, जज्बात के लिए स्कीमा द्वारा इस तरह दिखता है डॉ - मैं फोन करने के लिए @ commet.agrees_count, @ comment.disagrees_count, @ reply.agrees_count और @ reply.disagrees_count एक पर सक्षम होना चाहिए एक काउंटर कैश के माध्यम से polymorphic एसोसिएशन। तो टिप्पणी और उत्तर 2 काउंटर कैश की आवश्यकता होगी।
फिर भी यह मेरे लिए काम नहीं करता – kamal