Использование Rails 4.2.2 Я создал следующую миграцию, чтобы добавить counter_cache к модели Пользователи, когда я запускаю rake db: migrate counter показывает текущий: book_shelf_count правильно, но это не обновление, когда он меняетRails 4.2.2 counter_cache не обновляется
add_shelf_book_count.rb
class AddShelfBookCount < ActiveRecord::Migration
def self.up
add_column :users, :book_shelf_count, :integer, default: 0
User.reset_column_information
User.find_each { |user| User.reset_counters user.id, :shelf_books }
end
def self.down
remove_column :users, :book_shelf_count
end
end
user.rb
class User < ActiveRecord::Base
has_many :shelf_books, through: :shelves, dependent: :destroy
end
shelf.rb
class Shelf < ActiveRecord::Base
has_many :shelf_books, dependent: :destroy
belongs_to :user, counter_cache: :book_shelf_count
end
shelf_book.rb
class ShelfBook < ActiveRecord::Base
belongs_to :shelf
end