尝试用户命令参数时,ruby` stack level too deep error`

时间:2015-04-24 16:48:53

标签: ruby-on-rails ruby kaminari ruby-2.2 rails-4-2-1

我正在尝试将一个sort_by参数添加到使用Kaminari进行分页的rails应用程序中。将参数添加到查询时,我得到的堆栈级别太深错误。

应用程序/控制器/ file_items_controller.rb

def file_item_list(folder, sort = :name)
  folder.children(sort).map do |file_item|
    if file_item.file_item_type == 'file'
      file_item
    else
      file_item_list file_item
    end
  end.flatten
end
...
def children(sort = :name)
  return [] unless directory?
  credential.file_items.where(path: full_path).order(sort)
end
...

应用程序/模型/ file_item.rb

@Override
public void onBackPressed() {
   moveTaskToBack(true);
}

1 个答案:

答案 0 :(得分:4)

您有params[sort_by],您真正想要的是params[:sort_by]。您的方法正在尝试评估sort_by并进入无限循环。