Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Restful Rails Edit vs Update

I was trying to redirect to a different page after editing an entry, I assumed that it was using the update code because you are updating the database. It took me some time to realise that I was using the wrong action in the controller. Can someone please explain how edit and update work. Why are there two different actions? what are the differences between them?

like image 729
Rumpleteaser Avatar asked Oct 11 '10 23:10

Rumpleteaser


2 Answers

edit action is responsible for rendering the view

update action is responsible for interacting with the model (db updates etc)

If you run rake routes you will see the difference between the verb and the action. Typically, the create/update actions are used when submitting a form. This differs from the new and edit actions as these are used to render the view (that displays the form to be submitted).

like image 152
Coderama Avatar answered Oct 03 '22 05:10

Coderama


Another perspective - a bit redundant to highlight similarities and differences:

New is the precursor action to render a form, that upon submitting, runs the Create action. (the view is typically redirected back to the index view showing a list of similar items you already created)

Edit is the precursor action to render a form, that upon submitting, runs the Update action. (the view is typically redirected back to the index view showing a list of similar items you already created)

like image 24
seanriordan08 Avatar answered Oct 03 '22 04:10

seanriordan08