Интеграция Ruby on Rails Activemerchant - Передача переменных - PullRequest
0 голосов
/ 23 января 2012

Я настроил регулярные платежи в своем приложении, используя activemerchant и paypal. Весь код запускается с контроллера с тестовыми данными, и я получаю сообщение об успехе, возвращаемое из этого:

credit_card = {
:type => "visa",
:number => "4402526063652333",
:verification_value => '122',
:month => '06',
:year => '2016',
:first_name => 'Test Name',
:last_name => 'Test Account',
:street_1 => 'Test Street',
:city => 'Test city',
:state => 'Heref',
:country => 'US',
:zip => '111111',
:email => 'test@test.com'
}

Однако я хочу, чтобы это работало в моем приложении с данными кредитной карты, предоставленными формой. Но детали никогда не переходят из формы в настройку контроллера следующим образом:

credit_card = {
:type => :card_type,
:number => :card_number,
:verification_value => :card_verification,
:month => :card_month,
:year => :card_year,
:first_name => 'Test Name',
:last_name => 'Test Account',
:street_1 => 'Test Street',
:city => 'Test city',
:state => 'Heref',
:country => 'US',
:zip => '111111',
:email => 'test@test.com'
}

Нужно ли переместить это в модель, чтобы значение карты из формы перешло в: номер_карты?

1 Ответ

1 голос
/ 24 января 2012

Вы, вероятно, хотите:

credit_card = {
  :type => params[:card_type],
  :number => params[:card_number],
  :verification_value => params[:card_verification],
  :month => params[:card_month],
  :year => params[:card_year],
  # ...

Поскольку params - это хэш значений параметров HTTP, которые вы получаете из формы.

Вы можете проверить, получаете ли вы ожидаемые значения, напечатав значение params на консоли, когда вы делаете запрос. Добавьте этот код в действие вашего контроллера: p params.

...