Rails:在嵌套视图中订购商品

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Rails:在嵌套视图中订购商品相关的知识,希望对你有一定的参考价值。

我有一个名为Post的模型,它属于另一个名为Group的模型。因此,目前用户可以导航到组并创建帖子,帖子显示在正确的视图下。但是,我正在试图弄清楚如何使帖子按降序显示,以便最新的帖子在该特定组的顶部。

这是在posts_controller中。当我去... / groups /:id / posts时它会正确地按降序排列它们但是我需要帖子显示在... / groups /:id中降序

   # GET /groups/:group_id/posts
    def index
      @posts = @group.posts.order("created_at desc")
    end

这是在groups / show.html.erb视图中。有没有办法在@group.posts.each上添加降序?

      <%= link_to 'New Post', new_group_post_path(@group.id) %>  
      <!-- gets posts for the group -->
      <div class="row">
          <% @group.posts.each do |post| %>
        <div class="col-lg-12">
          <div class="card bottom-pad">
            <div class="card-body">
              <h4 class="card-title"><%= link_to post.title, group_post_path(@group, post), class: "text-primary" %></h4>
              <p class="card-text"><%= truncate(post.content, length: 500)   %><br><br>
               <%= post.user.last_name %>
              </p>
            </div>
            <div class="card-footer">
              <small class="text-muted"><%= time_ago_in_words(post.created_at) + " ago" %></small>
            </div>
          </div>
          <br><br>
        </div><!--./col-->
        <% end %><!--./@group.posts.each-->
      </div><!--./row-->   
答案

您可以像这样在show.html.erb中进行排序:

<%= link_to 'New Post', new_group_post_path(@group.id) %>  
<!-- gets posts for the group -->
<div class="row">
  <% @group.posts.order(created_at: :desc).each do |post| %>
    <div class="col-lg-12">
      <div class="card bottom-pad">
        <div class="card-body">
          <h4 class="card-title"><%= link_to post.title, group_post_path(@group, post), class: "text-primary" %></h4>
          <p class="card-text"><%= truncate(post.content, length: 500)   %><br><br>
           <%= post.user.last_name %>
          </p>
        </div>
        <div class="card-footer">
          <small class="text-muted"><%= time_ago_in_words(post.created_at) + " ago" %></small>
        </div>
      </div>
      <br><br>
    </div><!--./col-->
  <% end %><!--./@group.posts.each-->
</div><!--./row-->   

以上是关于Rails:在嵌套视图中订购商品的主要内容,如果未能解决你的问题,请参考以下文章

Recyclerview 滚动在嵌套滚动视图中的片段中不起作用

在 Rails 中嵌套资源时的不同视图

Rails 从父数据中获取数据并在嵌套视图中显示为页面标题(标题)

Rails视图中的嵌套模型

Rails 6:JS绕过条件,每次访问运行代码

当我将片段添加到我的视图寻呼机时(在嵌套滚动视图中),我无法从具有设备后退按钮的应用程序退出