0
我创建了一个由ryan bates在他的电视直播#228中描述的排序方法:http://railscasts.com/episodes/228-sortable-table-columns如何通过rails中的多个列对表进行分类?
现在我的表默认按grant_id排序。我想要进行子排序,这意味着默认的排序将由grant_id然后由student_id进行: 如果我有3个条目。 2个由一个学生和另一个学生的另一个入口。 (都有相同的资助)。 我希望同一个学生的两个作品可以排在一起排序。 这是我使用的代码: 在applcation_helper:
def sortable(column, title = nil)
title ||= colum.titleize
direction = column == sort_column && sort_direction == "asc" ? "desc" : "asc"
link_to title, :sort => column, :direction => direction
end
在控制器:
def sort_column
Entry.column_names.include?(params[:sort]) ? params[:sort] : "grant_id"
end
def sort_direction
%w[asc desc].include?(params[:direction]) ? params[:direction] : "asc"
end
@entries = current_user.entries.order(sort_column + " " + sort_direction)