【问题标题】:rails 4 custom path Sort tablerails 4 自定义路径排序表
【发布时间】:2015-03-02 23:10:20
【问题描述】:

我关注http://railscasts.com/episodes/228-sortable-table-columns 在我的记录 index.erb 上制作了一个可排序表

所以一切都很好,但现在我已经回到我的主页并将这段代码放在我的主页对象的 index.erb 中:

<%= link_to "Records Index", records_path %>

我得到一个 sql 错误:

不管怎样,我回到正在工作的记录页面,发现我的 application_helper.rb 正在对 URL 执行此操作

http://localhost:3000/records?direction=asc&sort=firstname

所以现在一个简单的 records_path 调用不起作用。什么会起作用?我试过了

records_path & "?direction=asc&sort=firstname"

但这也无济于事。你能帮助我吗?谢谢!

【问题讨论】:

  • 好吧,屏幕截图中显示的错误似乎与表格中的列有关,而不是与控制器有关。好像您的控制器正在尝试引用实际上不存在的列。您已经仔细检查了 schema.rb 文件以确保该列存在,并且已经运行了所有待处理的迁移,对吗?

标签: ruby-on-rails url rails-routing link-to


【解决方案1】:

我想也许我应该在记录控制器中修复索引的 Def,所以我正在尝试这样的东西

class RecordsController < ApplicationController
...
  def index
    if sort_column.blank? #sort_direction.nil? || sort_column.nil?
      @records = Record.all
    else
      @records = Record.order(sort_column + " " + sort_direction)
    end
  end

但这没有用。所以我在主页上尝试了这个:

<%= link_to "Records Index", '\records?direction=asc&sort=firstname' %>

我确信有更好的方法可以使用路由或更正应用程序帮助程序或记录控制器中的某些内容,但这对我有用。

【讨论】:

    猜你喜欢
    • 2015-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多