我已经读过这个不可能,然后有人告诉我它是。他们给了我这个代码,但后来不得不去了,现在我的应用程序被破坏,直到我开始工作:/
我有一个Tag模型,每个标签都有__资源:through =>资源标签。每个资源也有很多标签。
我需要知道每个标签的资源数量(我不关心其他方式)。
问题是它说未知密钥cache_counter
这是我的模特
Tag.rb
has_many :resource_tags, :dependent => :destroy, :counter_cache => :resource_count
has_many :resources, :through => :resource_tags
Resource.rb
has_many :resource_tags, :dependent => :destroy
has_many :tags, :through => :resource_tags
我的迁移:
class CreateTags < ActiveRecord::Migration
def change
create_table :tags do |t|
t.string :name
t.integer :resource_count, :default => 0
t.timestamps
end
end
end
答案 0 :(得分:2)
:counter_cache
选项适用于belongs_to
方法
belongs_to :tag, :counter_cache => :resource_count
我认为最好将列resources_count
(复数)命名为