多くの Rails チュートリアルに取り組んだ後、これは私の最初のソロ プロジェクトです。
私は 2 つのモデルを持っています。1 つは最上位レコード (lesson.rb) を制御し、もう 1 つは 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
/models/attachment.rb
class Attachment < ActiveRecord::Base
attr_accessible :image
belongs_to :lesson
mount_uploader :image, ImageUploader
end
/controllers/lessons.rb(メソッドを表示)
def show
@lesson = Lesson.find(params[:id])
end
/views/lessons/show.html.erb
<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>