记录帖子查看次数

This commit is contained in:
yanxd 2013-12-15 15:10:29 +08:00
parent e3898ee39d
commit f79cc4e597
3 changed files with 49 additions and 70 deletions

View File

@ -57,6 +57,7 @@ class MemosController < ApplicationController
pre_count = REPLIES_PER_PAGE pre_count = REPLIES_PER_PAGE
@memo = @memo.root # 取出楼主防止输入帖子id让回复作为主贴显示 @memo = @memo.root # 取出楼主防止输入帖子id让回复作为主贴显示
@memo.update_attribute(:viewed_count, @memo.viewed_count.to_i + 1)
page = params[:page] page = params[:page]
@reply_count = @memo.children.count @reply_count = @memo.children.count

View File

@ -0,0 +1,5 @@
class AddViewedCountToMemos < ActiveRecord::Migration
def change
add_column :memos, :viewed_count, :int, default: 0
end
end

View File

@ -11,15 +11,7 @@
# #
# It's strongly recommended to check this file into your version control system. # It's strongly recommended to check this file into your version control system.
ActiveRecord::Schema.define(:version => 20131122132942) do ActiveRecord::Schema.define(:version => 20131215065910) do
create_table "a_user_watchers", :force => true do |t|
t.string "name"
t.text "description"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.integer "member_id"
end
create_table "activities", :force => true do |t| create_table "activities", :force => true do |t|
t.integer "act_id", :null => false t.integer "act_id", :null => false
@ -304,7 +296,7 @@ ActiveRecord::Schema.define(:version => 20131122132942) do
create_table "issue_relations", :force => true do |t| create_table "issue_relations", :force => true do |t|
t.integer "issue_from_id", :null => false t.integer "issue_from_id", :null => false
t.integer "issue_to_id", :null => false t.integer "issue_to_id", :null => false
t.string "relation_type", :null => false t.string "relation_type", :default => "", :null => false
t.integer "delay" t.integer "delay"
end end
@ -445,6 +437,7 @@ ActiveRecord::Schema.define(:version => 20131122132942) do
t.boolean "sticky", :default => false t.boolean "sticky", :default => false
t.datetime "created_at", :null => false t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false t.datetime "updated_at", :null => false
t.integer "viewed_count", :default => 0
end end
create_table "messages", :force => true do |t| create_table "messages", :force => true do |t|
@ -467,22 +460,6 @@ ActiveRecord::Schema.define(:version => 20131122132942) do
add_index "messages", ["last_reply_id"], :name => "index_messages_on_last_reply_id" add_index "messages", ["last_reply_id"], :name => "index_messages_on_last_reply_id"
add_index "messages", ["parent_id"], :name => "messages_parent_id" add_index "messages", ["parent_id"], :name => "messages_parent_id"
create_table "messages_for_bids", :force => true do |t|
t.string "message"
t.integer "user_id"
t.integer "bid_id"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "messages_for_users", :force => true do |t|
t.integer "messager_id"
t.integer "user_id"
t.string "message"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "news", :force => true do |t| create_table "news", :force => true do |t|
t.integer "project_id" t.integer "project_id"
t.string "title", :limit => 60, :default => "", :null => false t.string "title", :limit => 60, :default => "", :null => false
@ -542,22 +519,11 @@ ActiveRecord::Schema.define(:version => 20131122132942) do
t.integer "watchers_count" t.integer "watchers_count"
t.integer "project_id" t.integer "project_id"
t.integer "project_type" t.integer "project_type"
t.integer "gitlab_group_id", :limit => 8
t.float "grade", :default => 0.0 t.float "grade", :default => 0.0
t.integer "course_ac_para", :default => 0 t.integer "course_ac_para", :default => 0
end end
add_index "project_statuses", ["changesets_count"], :name => "index_project_statuses_on_changesets_count" add_index "project_statuses", ["grade"], :name => "index_project_statuses_on_grade"
add_index "project_statuses", ["watchers_count"], :name => "index_project_statuses_on_watchers_count"
create_table "project_tags", :force => true do |t|
t.integer "project_id"
t.integer "tag_id"
t.string "description"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.integer "user_id"
end
create_table "projects", :force => true do |t| create_table "projects", :force => true do |t|
t.string "name", :default => "", :null => false t.string "name", :default => "", :null => false
@ -576,6 +542,9 @@ ActiveRecord::Schema.define(:version => 20131122132942) do
t.boolean "hidden_repo", :default => false, :null => false t.boolean "hidden_repo", :default => false, :null => false
end end
add_index "projects", ["lft"], :name => "index_projects_on_lft"
add_index "projects", ["rgt"], :name => "index_projects_on_rgt"
create_table "projects_trackers", :id => false, :force => true do |t| create_table "projects_trackers", :id => false, :force => true do |t|
t.integer "project_id", :default => 0, :null => false t.integer "project_id", :default => 0, :null => false
t.integer "tracker_id", :default => 0, :null => false t.integer "tracker_id", :default => 0, :null => false
@ -611,7 +580,6 @@ ActiveRecord::Schema.define(:version => 20131122132942) do
t.text "extra_info" t.text "extra_info"
t.string "identifier" t.string "identifier"
t.boolean "is_default", :default => false t.boolean "is_default", :default => false
t.string "git_project_id"
end end
add_index "repositories", ["project_id"], :name => "index_repositories_on_project_id" add_index "repositories", ["project_id"], :name => "index_repositories_on_project_id"
@ -625,6 +593,26 @@ ActiveRecord::Schema.define(:version => 20131122132942) do
t.string "issues_visibility", :limit => 30, :default => "default", :null => false t.string "issues_visibility", :limit => 30, :default => "default", :null => false
end end
create_table "seems_rateable_cached_ratings", :force => true do |t|
t.integer "cacheable_id", :limit => 8
t.string "cacheable_type"
t.float "avg", :null => false
t.integer "cnt", :null => false
t.string "dimension"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "seems_rateable_rates", :force => true do |t|
t.integer "rater_id", :limit => 8
t.integer "rateable_id"
t.string "rateable_type"
t.float "stars", :null => false
t.string "dimension"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "settings", :force => true do |t| create_table "settings", :force => true do |t|
t.string "name", :default => "", :null => false t.string "name", :default => "", :null => false
t.text "value" t.text "value"
@ -635,9 +623,9 @@ ActiveRecord::Schema.define(:version => 20131122132942) do
create_table "shares", :force => true do |t| create_table "shares", :force => true do |t|
t.date "created_on" t.date "created_on"
t.string "title"
t.string "share_type"
t.string "url" t.string "url"
t.string "title"
t.integer "share_type"
t.datetime "created_at", :null => false t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false t.datetime "updated_at", :null => false
t.integer "project_id" t.integer "project_id"
@ -645,12 +633,6 @@ ActiveRecord::Schema.define(:version => 20131122132942) do
t.string "description" t.string "description"
end end
create_table "students", :force => true do |t|
t.string "name"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "students_for_courses", :force => true do |t| create_table "students_for_courses", :force => true do |t|
t.integer "student_id" t.integer "student_id"
t.integer "course_id" t.integer "course_id"
@ -709,7 +691,7 @@ ActiveRecord::Schema.define(:version => 20131122132942) do
create_table "tokens", :force => true do |t| create_table "tokens", :force => true do |t|
t.integer "user_id", :default => 0, :null => false t.integer "user_id", :default => 0, :null => false
t.string "action", :limit => 30, :default => "", :null => false t.string "action", :limit => 30, :default => "", :null => false
t.string "value", :limit => 40 t.string "value", :limit => 40, :default => "", :null => false
t.datetime "created_on", :null => false t.datetime "created_on", :null => false
end end
@ -735,13 +717,12 @@ ActiveRecord::Schema.define(:version => 20131122132942) do
t.integer "zip_code" t.integer "zip_code"
t.datetime "created_at", :null => false t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false t.datetime "updated_at", :null => false
t.integer "identity"
t.string "technical_title" t.string "technical_title"
t.integer "identity"
t.string "student_id" t.string "student_id"
t.string "teacher_realname" t.string "teacher_realname"
t.string "student_realname" t.string "student_realname"
t.string "location_city" t.string "location_city"
t.string "git_token"
end end
create_table "user_grades", :force => true do |t| create_table "user_grades", :force => true do |t|
@ -778,14 +759,6 @@ ActiveRecord::Schema.define(:version => 20131122132942) do
add_index "user_statuses", ["grade"], :name => "index_user_statuses_on_grade" add_index "user_statuses", ["grade"], :name => "index_user_statuses_on_grade"
add_index "user_statuses", ["watchers_count"], :name => "index_user_statuses_on_watchers_count" add_index "user_statuses", ["watchers_count"], :name => "index_user_statuses_on_watchers_count"
create_table "user_tags", :force => true do |t|
t.integer "user_id"
t.integer "tag_id"
t.string "description"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "users", :force => true do |t| create_table "users", :force => true do |t|
t.string "login", :default => "", :null => false t.string "login", :default => "", :null => false
t.string "hashed_password", :limit => 40, :default => "", :null => false t.string "hashed_password", :limit => 40, :default => "", :null => false