Getting input's value from a form

I am following a new tutorial just added to the upcoming book,
Advanced Rails Recipes. The recipe is, “Process Recurring Credit Card
Payments”. The tutorial is great and I recommend picking up the PDF
book.

Simply put, there is a card server, and a then your main application
which is used to pass credit card numbers to the server.

The problem I am having, is how do I get the parameters from the form
into the controller without storing them in the model? It would be
easy if I was storing the credit card number and expiration date in
the user model, but I am not for security, so I cannot call
@user.credit_card number. I guess I need something like
page["input_credit_card].value?

if @user.save
  self.current_user = @user
  cc = CreditCard.create(:first_name => @user.first_name,
    :last_name => @user.last_name,
    :number => #pick up from the form,
    :month => #pick up from the form,
    :year => #pick up from the form,
    :brand => #pickup from the form
  )

If you just want a CreditCard instance but do not want to persist it
to the database you can use:-

CreditCard.new(:first_name => @user.first_name,
:last_name => @user.last_name,
:number => #pick up from the form,
:month => #pick up from the form,
:year => #pick up from the form,
:brand => #pickup from the form )

Is that what you are asking or do you want to know how to pull the
values out of the params hash?

Jabbslad

If I could get the values without persist to the database, that would
be perfect. how can I do that?

thanks Jabbslad, I forgot about just using text_field_tag

You can just use the id of the tag to retrieve the value from the
params hash, e.g.

Assuming you have something like this in your view:-

<%= text_field_tag ‘number’ %>

You should be able to access it in your controller using:-

:number => params[‘number’]

Is that what you were after?

Jabbslad