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)