Railsでの:counter_cacheは保存すれば勝手にカウンター値を追加してくれる優れもの。
class Post < ActiveRecord::Base
belongs_to :user, :counter_cache => true
end
このような場合、usersテーブルに作るカウンター名はpost_countか、posts_countかどちらでしょうか?
正解は posts_count
ソース見て初めてわかった。複数形の概念は日本語にない分、直感的にわかりにくい。
おまけに、
class Post2 < ActiveRecord::Base
set_table_name “posts”
end
こんなことしてよそから書き込もうとすると :counter_cache => trueをしてもpost2s_countをupdateしようとするのでつかえない。