我有一個「Projects」的基本模型,它目前只有屬性name:string,active:boolean。在索引視圖中,我希望能夠有三個鏈接:活動項目,非活動項目和所有項目。這些鏈接將根據活動布爾值的狀態顯示適當的項目。起初,我成立了看法給予鏈接PARAMS,如:Rails:排序和篩選基於布爾屬性的數據
link_to "Active Projects", {:action => 'index', :active => true}
然後在控制器:
if params[:active] == "true"
@projects = Project.find(:all, :conditions => {:active => true})
elsif params[:active] == "false"
@projects = Project.find(:all, :conditions => {:active => false})
else
@projects = Project.all
這似乎有點麻煩,尤其是在未來,我希望有多個過濾器,像到期日和客戶。實現高級排序/篩選操作的好方法/寶石是什麼,而不是用很多代碼填充控制器?
https://github.com/ern即/ ransack是一個偉大的過濾寶石。 – deefour 2013-03-05 16:19:09