如何通过路由为Rails中的控制器或视图添加额外的参数

时间:2015-02-09 09:02:52

标签: ruby-on-rails parameters routes

我知道在rails路线中我可以执行类似get 'books/*section/:title', to: 'books#show'的操作,以便在控制器或视图中使用params[:title]

但是我无法找到可以获得固定额外参数的东西。就像,我总是会根据路线在某些参数上得到类似params[:preview] = true的内容。

我知道我总是可以这样做:

def new
  params.merge!({preview: true})
end

但我想知道是否还有其他办法。

1 个答案:

答案 0 :(得分:2)

只需使用defaults

即可
get 'books/*section/:title', to: 'books#show', defaults: {preview: true}

http://guides.rubyonrails.org/routing.html#defining-defaults