Coding form variations for object creadtion and CRUD


#1

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.

Any help greatly appreciated.


#2

On Tue, Feb 17, 2009 at 3:21 PM, Adam A. <
removed_email_address@domain.invalid> wrote:

Im wondering in my controller should I create two new actions i.e.
Any help greatly appreciated.

Posted via http://www.ruby-forum.com/.

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}

Andrew T.
http://ramblingsonrails.com
http://www.linkedin.com/in/andrewtimberlake

“I have never let my schooling interfere with my education” - Mark Twain