2011-01-11 2 views
2

Я ищу, чтобы дочерняя модель была добавлена ​​/ отредактирована в ее собственной форме, а не в родительской форме.Как получить form_for работы для вложенного ресурса - с небольшим завихрением

Любой пример, который я видел, имеет дочерний элемент, добавленный в том же виде, что и родительский. Так как я добавляю твист добавления/редактирования в отдельной форме, мне интересно, если это почему я получаю следующее сообщение об ошибке:

неопределенный метод `chapters_path» ...

routes.rb :

resources :books do 
    resources :chapters 
end 

book.rb:

has_many :chapters 

chapter.rb

belongs_to :book 

_form.html.erb:

<% form_for [@book, @chapter] do |f| %> 

Я думаю, что все-таки нужно использовать методологию гнездятся ресурсов, так как я хотел, чтобы добавить ребенка с URL, такие как книги/1/глав/новый - потому что это будет правильный подход рельсов, нет? или, может быть, я смотрю на это неправильно.

Любая помощь очень ценится.

ответ

0

нормально - у меня это работает - в случае, если кому-то интересно, вот настройки:

routes.rb

resources :chapters, :only => [:destroy, :update] 
resources :books do 
    resources :chapters, :only => [:create, :edit, :index, :new, :show] 
end 

корректировки были также необходимы для некоторых переадресовывает в главах контроллер