在页面底部滚动each_slice显示数组

问题描述 投票:0回答:1

我正在成功使用each_slice-它按预期工作。但是,它也在页面底部显示数组内容,就像我在其中添加了puts

我有一个非常简单的控制器方法:

def index
  @posts = Post.all
end

这里是视图:

.container
  .row
    .col-md-12{ style: "margin-top: 25px;" }
      %h1#intro-h Posts
  .row
    .col-md-12

  - @posts.each_slice(2) do |group|
    .row{style: 'margin-bottom: 30px;'}
      = group.each do |post|
        .col-md-2
          = image_tag post.user.profile_image.url, style: "height: 100px; border-radius: 50%;"
        .col-md-4
          %h3{style: 'margin-top: -5px;'}
            = link_to post.title, post
          Created by
          = post.first_name
          = post.last_name
          %br
          %p
            .row
              .col-md-4
                = link_to "Read more", post, class: "btn btn-default", style: "margin-top: 8px; width: 100px;", method: :get
              .col-md-4

= render 'paginator'

这显示在页面底部:

[#<Post id: 3, title: "Test Post", user_id: 3, description: "Test Post", slug: "test-post", featured_image: nil>]

任何想法如何摆脱页面底部的数组显示?

ruby-on-rails ruby-on-rails-5
1个回答
-1
投票

有问题的部分是= group.each do |post|,因为除了运行循环外,each还返回数组本身。并且由于在其前面有一个=符号,所以=中的view也将呈现group.each语句的返回输出。您可能想将-用作- group.each do |post|,因为它将呈现group.each的输出。

© www.soinside.com 2019 - 2024. All rights reserved.