Although not found in this project I tend to prefer to render views explicitly by name rather than using rails' magic.
This comes in handy when you need to set up an object to show on for example an edit page.
# user and states methods left out for brevity
# Before
def edit
render locals: { user_form: UserForm.new(user, states) }
end
def update
if user.update_attributes(user_params)
redirect_to users_path
else
render :edit, locals: { user_form: UserForm.new(user, states) }
end
end
# After
def edit
render_edit
end
def update
if user.update_attributes(user_params)
redirect_to users_path
else
render_edit
end
end
private
def render_edit
render :edit, locals: { user_form: UserForm.new(user, states) }
end
Although not found in this project I tend to prefer to render views explicitly by name rather than using rails' magic.
This comes in handy when you need to set up an object to show on for example an edit page.