I want to provide the user with two ways to add a task. The quick way
and the detailed way pretty much like google calendar allows for its
events.
On clicking the “Add Quickly” link a form with just a title field
appears immediately below.
For “Add Detailed” the user is taken to a new page where a form with
fields for title, due, location etc
Im wondering in my controller should I create two new actions i.e.
new_quick and new_detailed
or should I somehow (not sure how) just use logic in the one new
controller?
Im fairly new to rails so just trying to stick to best practices. Ive
implemented these already in a slapshot way and using link_to_remote but
just want to tidy it up as much as possible.
If you’re using mass assignment, you can keep a single, simple create
method
and then each form can just send through more parameters (make sure all
the
fields for the detailed version are optional in your model)
def create
task = Task.new(params[:task])
if task.save #success
else #failed
end
end
Then both of these could work
post :create, :task => {:title => ‘Test’}
and
post :create, :task => {:title => ‘Test’, :location => ‘Here’, :due =>
Time.now}