Answers

Question and Answer:

  Home  Ruby on Rails

⟩ What is difference between form_for and form_tag?

form_for and form_tag both are used to submit the form in

ruby on rails.

but the way of handling objects related to model is

different.

form_for:

you should use form_for for a specific model i.e while

crating an new row in database. form_for will perform the

standard http post which is having fields related to active

record objects.

here is the example for using form_for in ruby on rails:

<% form_for :user, @user, :url => { :action => "update" }

do |f| %>

then in here you can use the f object to create input

field.

First name: <%= f.text_field :firstname %>

Last name : <%= f.text_field :lastname %>

Biography : <%= f.text_area :biography %>

<% end %>

form_tag:

form_tag just creates an form as an normal form. form_for

will perform the standard http post without any model

backed and has normal fields. this is used mainly when

specific things need to be submitted via form

here is the example for using form_tag in ruby on rails:

<% form_tag '/posts' do -%>

<%= text_field_tag "post", "firstname" %>

<% end -%>

 175 views

More Questions for you: