Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails 3按复杂性排序_Ruby On Rails_Ruby On Rails 3_Sorting - Fatal编程技术网

Ruby on rails Rails 3按复杂性排序

Ruby on rails Rails 3按复杂性排序,ruby-on-rails,ruby-on-rails-3,sorting,Ruby On Rails,Ruby On Rails 3,Sorting,所以我有一个论坛应用程序和双重嵌套资源。第-->节主题-->回复并在应用程序控制器(Rails 3样式)中进行设置。我正在查看剖面视图,并尝试对我的主题进行排序。在大多数论坛中,最合乎逻辑的排序方法是按上次更新的时间排序。如果只是通过回复就可以了。明显的问题是,有些主题没有回复,因此简单地按回复排序是行不通的 <% @section.topics.sort_by{ ?? }.each do |topic| %> <tr>

所以我有一个论坛应用程序和双重嵌套资源。第-->节主题-->回复并在应用程序控制器(Rails 3样式)中进行设置。我正在查看剖面视图,并尝试对我的主题进行排序。在大多数论坛中,最合乎逻辑的排序方法是按上次更新的时间排序。如果只是通过回复就可以了。明显的问题是,有些主题没有回复,因此简单地按回复排序是行不通的

            <% @section.topics.sort_by{ ?? }.each do |topic| %>
              <tr>
                <td class="topic"><%= link_to topic.subject, [@section, topic] %></td>
                <td class="postCount"><%= topic.replies.count %></td>
                <td class="date">
                <% if topic.replies.empty? %>
                  <%= topic.created_at.strftime("%I:%M%p %m/%d/%y") %>
                <% else %>
                  <%= topic.replies.last.created_at.strftime("%I:%M%p %m/%d/%y") %>
                <% end %>
                </td>
              </tr>  
            <% end %>
结束

并通过视图传入:

<% @section.topics.sort_by{ |topic| topic.last_update(@section.topics)}.each do |topic| %>

但是当我这样做的时候,我得到了一个未定义的方法“repress”。有什么想法吗?谢谢。

据我所知

topic.last_update(@section.topics)
应该是:

topic.last_update(topic)

第二双眼睛永远不会痛=D
topic.last_update(topic)