【问题标题】:how to sort table columns in rails如何对rails中的表格列进行排序
【发布时间】:2014-12-09 21:44:51
【问题描述】:

在控制器中:

@orders=(Order.where(:hotel_user_id=>cookies[:hotel_id_for_login_user])) .order(params[:sort]).paginate(:per_page=>5,:page=>params[:page])

在视图中:

<th style="color: #808080;font-size: 14px; ">
    <%= link_to "Created On",:sort=>"created_at"%>
</th>

我有一个分页表,我想对其列进行排序。我指的是本教程(http://railscasts.com/episodes/228-sortable-table-columns?autoplay=true)。问题是排序不起作用,我没有收到任何错误。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4


    【解决方案1】:

    您是否获得了查询结果并且它没有排序?还是根本没有结果?

    试试这个:

    @orders = Order.where("hotel_user_id = ?", cookies[:hotel_id_for_login_user]).order("#{params[:sort]} ASC").paginate(:per_page => 5, :page => params[:page])
    
    1. 也许您的排序条件需要是符号或放在引号中
    2. 查询的“where”部分未设置条件
    3. 由于潜在的 SQL 注入,将用户提供的变量直接放入条件字符串是不安全的。

    我建议您阅读此内容以获取更多信息:http://guides.rubyonrails.org/active_record_querying.html

    希望对你有帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-04
      • 1970-01-01
      • 2017-05-02
      • 1970-01-01
      • 1970-01-01
      • 2020-01-15
      相关资源
      最近更新 更多