Посмотрите на counter_cache в активной записи.Это звучит как классический пример.
В модели User вы добавите столбец 'receivets_count'.
add_column :users, :receipts_count, :integer, :default => 0, :null => false
А в модели квитанций вы добавите
belongs_to :user, :counter_cache => true
Вы также захотите узнать, как изначально установить это число.Вы можете сделать это с помощью граблей или в процессе миграции.В этом есть некоторые ошибки, как вы увидите.Кэши счетчиков доступны только для чтения, и для их обновления в процессе миграции вам необходимо установить значение с помощью команды ActiveRecord :: Base.connection.execute ("...")
Существует много дискуссийОб этом в Интернете, Railscasts и т. д., и есть способ добавить пользовательский счетчик, если вы хотите, вы хотите прочитать больше о нем, чем я могу добавить здесь.