I understand what is passed to the form_for method when doing something like :
<% form_for(@user) do |f| %> ... <% end %>
if @user is set in the controller. This is pretty obvious.
But what happens when we pass :user, as I have seen in many examples ?
<% form_for(:user) do |f| %> ... <% end %>
When should I use the symbol version ?
Using the symbol will generate:
Using the object @user set to new you get:
If you set @user to something else it will change the form tag generated, of course
… try it out for yourself.
In the end it all depends what you’re trying to do. You might want to use the symbol if you have multiple :user forms on the same page.