我有一组从脚手架创建的帖子和使用回形针 gem 上传的图像。我想在每个用户个人资料上显示用户最后发布的最后六张图片,为此我正在过滤
<% @posts.limit(6).each do |tweet| %>
<% if post.media.present? %>
<%= link_to image_tag(post.media.url(:thumb)), tweet %><br>
<% end %>
<% end %>
在我的 Controller 中,我这样安排帖子
@posts = user.posts.order('created_at desc')
我的问题是。为什么使用上面的代码时,没有显示图像。计数增加到 9 时,我会显示三张图片,增加到 12 时,我会显示六张图片,依此类推
最佳答案
首先,您不应该在 View 中调用 db/model(使用 limit
)。直接在 Controller 中调用它:
@posts = user.posts.order(created_at: :desc).limit(6)
然后,我会进行一些调试以确保您拥有所需的记录。
例如使用 byebug 并在设置 @posts
实例变量后调用它以查看它包含的内容。是否所有帖子都包含媒体?
关于ruby-on-rails - 将帖子中显示的图片限制为最后六张,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47288949/