Привет, я новичок в Rails (и Stackoverflow), так что извините за мой вопрос.
Я озадачен <%= form_with(model: [ @article, @article.comments.build ], local: true) do |form| %>
в руководстве "Начало работы с рельсами".
В руководстве упомянуто [@article, @article.comments.build]
"строит вложенный маршрут", но как это сделать?
Как уже упоминалось в edgeguides model: @article
передает фактический объект @article
в форму.Итак, как мы можем передать вложенный маршрут к параметру модели?
Заранее благодарим за ваше руководство и терпение!
ОБНОВЛЕНИЕ
После долгих исследований я добился следующего прогресса
build
- псевдоним для
new
.
[@article, @article.comments.build]
- это массив Параметр
model
принимает экземпляр класса (в данном случае
comment
) и выводит область (
:comment
) и url (
article_comments_path(@article)
).Поскольку переданный в него экземпляр является новым, rails выводит метод следующим образом:
post
Source Так как хеш [@article, @article.comments.build]
возвращает экземпляр класса comment
, сообщая при этомнаправляет правильный URL (article_comments_path (@article))?