у меня есть такой вложенный объект:
class Work < ActiveRecord::Base
belongs_to :issue
belongs_to :author
has_many :pages, :class_name => 'Work'
accepts_nested_attributes_for :pages, :allow_destroy => true
end
class Page < ActiveRecord::Base
belongs_to :work
end
и у меня есть форма для создания / редактирования работы с полями для вложенного объекта страницы. я следовал этому посту за настройку, поэтому я использую помощника, чтобы моя форма создала новую страницу при запуске.
module AdminHelper
def make_work(work)
returning(work) do |w|
w.pages.build if w.pages.empty?
end
end
end
тогда, в моей частичной форме у меня есть:
- form_for make_work(@work) do |f|
...
- f.fields_for :page do |page_f|
= page_f.label :text
%br
= page_f.text_area :text
%p
= f.submit "Submit"
, которая отображает поля для страницы, но когда она отправлена, она ищет действие create в контроллере works. действие create находится в контроллере работ администратора (namespaced), поэтому оно прерывается.
Я пытаюсь сделать это с объектом пространства имен, но если я делаю это таким образом, он не знает о страницах:
- form_for make_work([:admin, @work]) do |f|
...
как использовать пространство имен с формой вложенного объекта, чтобы оно имело метод страниц, но отправляло сообщения на контроллер пространства / имен администратора / works?