Вы знаете, как выглядит страница просмотра новой страницы или страницы редактирования в скаффолде пользователя, верно?
form_for(@user) # something like that
Так что это вспомогательный метод, который вы можете найти внутри action_view / helper .. file
В основном, рендеринг формы для new и edit будет решаться этим методом form_for, что будет делать этот метод form_for (я просто сделал несколько пунктов)
1) Он проверит, какой тип ввода вы указали в форме
(проверьте API для различных способов использования помощника form_for)
2) Он определит параметры HTML на основе приведенного ниже кода
if object.respond_to?(:new_record?) && object.new_record?
{ :class => dom_class(object, :new), :id => dom_id(object), :method => :post } # for new
else
{ :class => dom_class(object, :edit), :id => dom_id(object, :edit), :method => :put } # for edit
end
3) Он сделает еще одну вещь для страницы редактирования, добавит скрытое поле, в котором будет значение идентификатора пользователя.
Пожалуйста, дайте мне знать, если вам нужно больше деталей. Я обновлю свой ответ соответственно.