【问题标题】:sort_link routing error for ransackransack 的 sort_link 路由错误
【发布时间】:2013-06-15 05:42:09
【问题描述】:

我一直在使用 sort_link 对页面上的链接进行排序

= sort_link(@search, :project_token, "Project ID")

它工作正常......但是当用户过滤某些东西时,它会将我带到 url discounts/set_filter,一旦它到达那里,可排序的链接就不再起作用并引发路由错误

  No route matches [GET] "/manager/reports/discounts/set_filter"

我查看了文档并查看了上面的 railscast http://railscasts.com/episodes/370-ransack?view=asciicast......Ryan Bates 确实解决了这个问题,但他通过将它移到 filter.html.haml 部分来解决它,这不是什么我想......我想保持我的链接可以这样排序而不会出现此错误

有什么建议吗?

谢谢

【问题讨论】:

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


    【解决方案1】:

    所以我通过向我的每个 sort_link 添加一个 {action: 'show'} 解决了这个问题

      %th.align_left 
        = sort_link(@search, :project_token, "Project ID", { action: "show" })
      %th.align_center 
        = sort_link(@search, :project_district_name, "District", { action: "show" })
      %th.align_center 
        = sort_link(@search, :property_city, "Property Address", { action: "show" })
      %th.align_center 
        = sort_link(@search, :created_at, "Application Date", { action: "show" })
      %th.align_center 
        = sort_link(@search, :submitter_first_name, "Submitted By", { action: "show" })
      %th.align_center 
        = sort_link(@search, :discount_code, "Code", { action: "show" })
    

    这可行,但我仍然不确定这是否是最好的方法......似乎我在这里违反了 D.R.Y 原则。

    任何建议都会有所帮助

    谢谢!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      • 2017-09-02
      • 2022-08-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多