首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >自动定位分拣?

自动定位分拣?
EN

Stack Overflow用户
提问于 2016-04-04 19:04:58
回答 2查看 32关注 0票数 0

我有一个表,可以对消息进行排序,以及消息何时发送。现在,当用户进入页面时,它从排序消息体开始,我希望它从用户启动页面时发送的时间desc开始。我会展示一些代码和截图。我还在railscast #228上找到了这个代码。

下面是对它们进行排序的方法。

代码语言:javascript
复制
 def sort_column
  Message.column_names.include?(params[:sort]) ? params[:sort] : "body"
 end

 def sort_direction
  %w(asc desc).include?(params[:direction]) ? params[:direction] : "asc"
 end

这里是风景

代码语言:javascript
复制
 <tbody>
    <% @message.each do |message| %>
      <tr>
        <td><%= message.body %></td>
        <td><%= time_ago_in_words message.created_at %> ago</td>
        <td><%= message.groups.order(:id).pluck(:name).to_sentence %></td>
      </tr>
    <% end %>
  </tbody>

这是用户打开页面时所看到的,就像您可以看到消息上的箭头一样。我希望箭头在“发送”方向上。

我不知道这是不是足够的信息,但让我知道!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-04 19:15:44

sort_columnsort_direction函数默认为"body""asc"

如果要将默认排序顺序默认为created_at,请将以下函数更改如下:

代码语言:javascript
复制
def sort_column
  Message.column_names.include?(params[:sort]) ? params[:sort] : "created_at"
end

def sort_direction
  %w(asc desc).include?(params[:direction]) ? params[:direction] : "desc"
end
票数 1
EN

Stack Overflow用户

发布于 2016-04-04 19:14:24

如果您只想按创建日期显示消息,请按以下的索引操作将它们拉进来:

代码语言:javascript
复制
Message.order(created_at: :desc)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36410838

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档