Fixes #1230. Makes comment counter more efficient
This commit is contained in:
parent
c5e3d495bb
commit
33df0ee8e4
5 changed files with 21 additions and 3 deletions
2
0
Normal file
2
0
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
invoke active_record
|
||||||
|
create db/migrate/20170316042351_add_comment_count_to_events.rb
|
||||||
|
|
@ -8,7 +8,7 @@ class Comment < ActiveRecord::Base
|
||||||
# want user to vote on the quality of comments.
|
# want user to vote on the quality of comments.
|
||||||
#acts_as_votable
|
#acts_as_votable
|
||||||
|
|
||||||
belongs_to :commentable, polymorphic: true
|
belongs_to :commentable, polymorphic: true, counter_cache: true
|
||||||
|
|
||||||
# NOTE: Comments belong to a user
|
# NOTE: Comments belong to a user
|
||||||
belongs_to :user
|
belongs_to :user
|
||||||
|
|
|
||||||
|
|
@ -183,4 +183,4 @@
|
||||||
%ul.dropdown-menu{role: 'menu'}
|
%ul.dropdown-menu{role: 'menu'}
|
||||||
= render 'change_state_dropdown', event: event
|
= render 'change_state_dropdown', event: event
|
||||||
%td.text-center
|
%td.text-center
|
||||||
= link_to "#{event.comment_threads.count}", admin_conference_program_event_path(@conference.short_title, event), anchor: 'comments-div'
|
= link_to "#{event.comments_count}", admin_conference_program_event_path(@conference.short_title, event), anchor: 'comments-div'
|
||||||
|
|
|
||||||
15
db/migrate/20170316042351_add_comment_count_to_events.rb
Normal file
15
db/migrate/20170316042351_add_comment_count_to_events.rb
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
class AddCommentCountToEvents < ActiveRecord::Migration
|
||||||
|
def up
|
||||||
|
add_column :events, :comments_count, :integer, default: 0
|
||||||
|
|
||||||
|
Event.reset_column_information
|
||||||
|
|
||||||
|
Event.find_each do |event|
|
||||||
|
event.update_attribute :comments_count, event.comment_threads.length
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def down
|
||||||
|
remove_column :events, :comments_count
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
@ -11,7 +11,7 @@
|
||||||
#
|
#
|
||||||
# It's strongly recommended that you check this file into your version control system.
|
# It's strongly recommended that you check this file into your version control system.
|
||||||
|
|
||||||
ActiveRecord::Schema.define(version: 20170213145807) do
|
ActiveRecord::Schema.define(version: 20170316042351) do
|
||||||
|
|
||||||
create_table "ahoy_events", force: :cascade do |t|
|
create_table "ahoy_events", force: :cascade do |t|
|
||||||
t.uuid "visit_id", limit: 16
|
t.uuid "visit_id", limit: 16
|
||||||
|
|
@ -234,6 +234,7 @@ ActiveRecord::Schema.define(version: 20170213145807) do
|
||||||
t.boolean "is_highlight", default: false
|
t.boolean "is_highlight", default: false
|
||||||
t.integer "program_id"
|
t.integer "program_id"
|
||||||
t.integer "max_attendees"
|
t.integer "max_attendees"
|
||||||
|
t.integer "comments_count", default: 0
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "events_registrations", force: :cascade do |t|
|
create_table "events_registrations", force: :cascade do |t|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue