You need to specify the counter_cache option on the has_many side of the association when using a custom counter cache column. This is documented on the has_many association here: http://apidock.com/rails/ActiveRecord/Associations/ClassMethods/has_many [ci skip]
Merge pull request #18046 from stephenminded/counter_cache_docs_fix

Counter cache Rails guides fix