form_helpers Rails 3 — включают объекты в цикл

#ruby-on-rails-3 #nested-attributes #form-helpers

#рубин-на-рельсах-3 #вложенные атрибуты #формы-помощники #ruby-on-rails-3

Вопрос:

Экскурсия has_many :photos , фотография belongs_to :tour .

Поля для тура являются :title, :description .

Поля для фотографии являются :alt, :image (path), :tour_id

Тур accepts_nested_attributes_for :photos

Тур attr_accessible :photo_attributes

В форме для туров я хочу вернуть соответствующие фотографии туров в форме после сохранения, чтобы пользователь мог видеть загруженные фотографии и добавлять их теги Alt

Вот как выглядит форма, но я не знаю, как вернуть все сохраненные изображения в форму…

 = semantic_form_for ([:admin, @tour]), :html => {:multipart => true} do |f|
...
  - unless @tour.new_record?
    = semantic_fields_for Photo.new do |f|
      = f.file_field :image, :rel => tour_photos_path(@tour)
    - else
      You must save the tour, to be able add photos.

    = f.semantic_fields_for :photos, @tour.photos do |p|

         // If there is a photo, somehow display that image in this form loop...
         = image_tag ## WHAT COULD I PUT HERE? ##

         = f.input :remove_image, :as => :boolean

         = p.inputs
  

Я в замешательстве, потому что, очевидно, form_helper может вернуть сохраненные элементы формы обратно в поля формы.. но я не знаю, как я могу использовать один из этих сохраненных элементов в теге изображения…

Ответ №1:

Ваш вопрос немного сложен для понимания, но как насчет чего-то подобного?

 - @tour.photos.each do |photo|
  = image_tag photo.path
  = f.input :remove_image, :as => :boolean
  # etc...