我有2个型号:制造商和汽车
汽车属于制造商,制造商有许多汽车
当人们正在搜索汽车时,我想向他们展示那些在列表中有汽车的制造商(隐藏没有汽车的制造商)。
我向制造商添加了字段'count',但是不知道在添加/销毁Car时如何更好地保持最新状态?
答案 0 :(得分:5)
由于您已经有了计数字段,只需将其配置添加到您的汽车模型中:
class Car < ActiveRecord::Base
belongs_to :manufacturer, :counter_cache => :counter
end
现在,无论何时添加新车,counter
中的Manufacturer
字段都会增加。您现在需要正确填写此字段,因为您已有数据库。
此外,如果您尚未定义counter
字段,则Rails默认使用名为cars_counter
的字段(而不仅仅是counter
),然后使用{{1定义您只能将其作为counter_cache
,而不是将列命名为counter_cache => true
。