0

在搜索页面上,我通过表单向索引操作提交查询:

= form_tag reports_path, method: 'get' do
  = text_field_tag :query, params[:query]

我成功地将它从reports#index视图传递到#show视图:

= link_to params[:query] ? query_report_path(report.id, params[:query]) : report do

由于这条路线,这是可能的:

  resources :reports do
    get ':query', to: 'reports#show', on: :member, as: :query

但我正在尝试从视图中将相同的查询返回到#indexlink操作reports#show

= link_to 'Back', reports_path, query: @query

但它失败了::query= nil

也试过:

= link_to 'Back', reports_path(query: @query, class: 'btn btn-small')

这根本不起作用......

路由语法让我绊倒了......再次!什么是正确的语法?有一个更好的方法吗?为什么这不会触发 初始触发相同reports#index的参数?:queryform_tag

谢谢!

4

1 回答 1

0

我认为你的第二次尝试很接近,但你的括号是错误的。尝试将 HTML 选项哈希class: 'btn btn-small'作为第三个参数link_to而不是作为reports_path.

于 2012-09-21T17:24:25.650 回答