新闻排序时间改为更新时间

This commit is contained in:
yuanke 2016-05-03 16:34:31 +08:00
parent 5f24fb6496
commit 96e7c9d134
1 changed files with 8 additions and 3 deletions

View File

@ -79,21 +79,20 @@ class NewsController < ApplicationController
@b_sort = 2 @b_sort = 2
end end
sort_name = "created_on" sort_name = "updated_at"
sort_type = @b_sort == 1 ? "asc" : "desc" sort_type = @b_sort == 1 ? "asc" : "desc"
scope = @course ? @course.news.course_visible : News.course_visible scope = @course ? @course.news.course_visible : News.course_visible
news_arr = scope.map{|news| news.id} news_arr = scope.map{|news| news.id}
@page = params[:page] ? params[:page].to_i + 1 : 0 @page = params[:page] ? params[:page].to_i + 1 : 0
news_page = 0 #@page *10 news_page = 0 #@page *10
@news_count = scope.count @news_count = scope.count
@is_new = params[:is_new] @is_new = params[:is_new]
@q = params[:subject] @q = params[:subject]
if params[:subject].nil? || params[:subject].blank? if params[:subject].nil? || params[:subject].blank?
scope_order = scope.reorder("#{News.table_name}.sticky DESC, #{News.table_name}.#{sort_name} #{sort_type}").offset(news_page).includes(:author,:course).all() scope_order = scope.reorder("#{News.table_name}.sticky DESC, #{News.table_name}.created_on #{sort_type}").offset(news_page).includes(:author,:course).all()
#all(:include => [:author, :course], #all(:include => [:author, :course],
#:order => "#{News.table_name}.sticky DESC, #{News.table_name}.created_on DESC").limit(10).offset(news_page) #:order => "#{News.table_name}.sticky DESC, #{News.table_name}.created_on DESC").limit(10).offset(news_page)
else else
@ -101,6 +100,10 @@ class NewsController < ApplicationController
#.all(:include => [:author, :course],:order => "#{News.table_name}.sticky DESC, #{News.table_name}.created_on DESC") #.all(:include => [:author, :course],:order => "#{News.table_name}.sticky DESC, #{News.table_name}.created_on DESC")
end end
scope_order.each do |topic|
topic[:updated_at] = CourseActivity.where("course_act_type='#{topic.class}' and course_act_id =#{topic.id}").first.updated_at
end
#根据 赞+回复数排序 #根据 赞+回复数排序
if @order.to_i == 2 if @order.to_i == 2
@type = 2 @type = 2
@ -115,6 +118,8 @@ class NewsController < ApplicationController
scope_order = sortby_time_countcommon_hassticky scope_order,sort_name scope_order = sortby_time_countcommon_hassticky scope_order,sort_name
else else
@type = 1 @type = 1
@b_sort == 1 ? scope_order = scope_order.sort{|x,y| x[:updated_at] <=> y[:updated_at] } : scope_order = scope_order.sort{|x,y| y[:updated_at] <=> x[:updated_at] }
scope_order = sort_by_sticky scope_order
end end
@newss = scope_order @newss = scope_order