如何用url params来安抚

时间:2012-06-27 11:46:00

标签: ruby-on-rails ruby-on-rails-3

我遇到了构建rails应用程序的问题。假设我有一个Style模型,我希望在我的页面根目录(/)上列出5个特色模型,并浏览选项,我可以设置从最旧到最新的列表,反之亦然。

  

http://example.com/ - 五个特色   http://example.com/styles/newest -   所有最新的http://example.com/styles/oldest - 所有最旧的

如何编码控制器和路线?我已经尝试了五个特色的单独控制器和所有if语句(类似于如果params [:order] =='最旧'然后@styles = Style.oldest),但这似乎不是工作或逻辑

1 个答案:

答案 0 :(得分:1)

添加两个自定义路线。 的routes.rb

resources :styles do
  collection do
    get :newest
    get :oldest
  end
end

root :to => 'styles#index'

StylesController.rb

def index
   @styles = Style.last(5)
end

def newest
   @styles = Style.order("created_at desc")
  ...
end

def oldest
  ...
end

建议:保持简单。