Ruby on rails rails在链接记录中循环

Ruby on rails rails在链接记录中循环,ruby-on-rails,Ruby On Rails,在完成了许多rails教程之后,这是我的第一个单独项目 我有两个模型,一个控制顶级记录(lesson.rb),另一个通过carrierWave(attachment.rb)控制相关图像。我正在尝试循环浏览链接的图像,并在帖子中显示它们 到目前为止,我已经创建了资产,但是我很难弄清楚如何在show.html.erb中显示连接的图像。如果答案很简单,请原谅我,我在谷歌上搜索了很多,虽然我发现了很多结果,但我仍然很难将这些方法应用到我的项目中 提前感谢你的帮助 /models/lesson.rb cl

在完成了许多rails教程之后,这是我的第一个单独项目

我有两个模型,一个控制顶级记录(lesson.rb),另一个通过carrierWave(attachment.rb)控制相关图像。我正在尝试循环浏览链接的图像,并在帖子中显示它们

到目前为止,我已经创建了资产,但是我很难弄清楚如何在show.html.erb中显示连接的图像。如果答案很简单,请原谅我,我在谷歌上搜索了很多,虽然我发现了很多结果,但我仍然很难将这些方法应用到我的项目中

提前感谢你的帮助

/models/lesson.rb

class Lesson < ActiveRecord::Base
  attr_accessible :content, :title, :attachments_attributes

  has_many :attachments, :dependent => :destroy


  accepts_nested_attributes_for :attachments

  validates :title, :content, :presence => true
  validates :title, :uniqueness => true

end
class Attachment < ActiveRecord::Base
  attr_accessible :image
  belongs_to :lesson
  mount_uploader :image, ImageUploader
end
<div class="body sixteen columns">
    <h2><%= @lesson.title %></h2>

    <div class="sixteen columns images">
        <% for image in @lesson.attachment %>
            <%= image_tag @lesson.attachment.image_url.to_s %>
        <% end %>
    </div>

    <p><%= simple_format(@lesson.content) %></p>
</div>
/views/lessons/show.html.erb

class Lesson < ActiveRecord::Base
  attr_accessible :content, :title, :attachments_attributes

  has_many :attachments, :dependent => :destroy


  accepts_nested_attributes_for :attachments

  validates :title, :content, :presence => true
  validates :title, :uniqueness => true

end
class Attachment < ActiveRecord::Base
  attr_accessible :image
  belongs_to :lesson
  mount_uploader :image, ImageUploader
end
<div class="body sixteen columns">
    <h2><%= @lesson.title %></h2>

    <div class="sixteen columns images">
        <% for image in @lesson.attachment %>
            <%= image_tag @lesson.attachment.image_url.to_s %>
        <% end %>
    </div>

    <p><%= simple_format(@lesson.content) %></p>
</div>


两件事:使用
每个
循环浏览附件,并将
附件
称为复数而不是单数

<% @lesson.attachments.each do |attachment| %>
  <%= image_tag attachment.image_url.to_s %>
<% end>

另一件好事是:

@lesson=lesson.includes(:附件)。查找(params[:id])


如果在从数据库检索课程时使用
includes
,它将只触发一个SQL SELECT查询,而不是该课程上的一个+附件数。更多详情请参见。

谢谢,这非常有效,我仍然在习惯rails的方式,我想这说明了这一点。