2014-02-09 3 views
3

Я новичок в рельсах, и я хочу поэкспериментировать с построением рынка покупателей и продавцов. Я хочу использовать драгоценный камень paypal ruby adaptive payment sdk для этого эксперимента. На странице github приведен пример и пример кода для его настройки.Как я могу использовать SDK Paypal Adaptive Payments?

require 'paypal-sdk-adaptivepayments' 
PayPal::SDK.configure(
    :mode  => "sandbox", # Set "live" for production 
    :app_id => "APP-80W284485P519543T", 
    :username => "jb-us-seller_api1.paypal.com", 
    :password => "WX4WTU3S8MY44S7F", 
    :signature => "AFcWxV21C7fd0v3bYYYRCpSSRl31A7yDhhsPUU2XhtMoZXsWHFxu-RWy") 

@api = PayPal::SDK::AdaptivePayments.new 

# Build request object 
@pay = @api.build_pay({ 
    :actionType => "PAY", 
    :cancelUrl => "http://localhost:3000/samples/adaptive_payments/pay", 
    :currencyCode => "USD", 
    :feesPayer => "SENDER", 
    :ipnNotificationUrl => "http://localhost:3000/samples/adaptive_payments/ipn_notify", 
    :receiverList => { 
    :receiver => [{ 
     :amount => 1.0, 
     :email => "[email protected]" }] }, 
    :returnUrl => "http://localhost:3000/samples/adaptive_payments/pay" }) 

# Make API call & get response 
@response = @api.pay(@pay) 

# Access response 
if @response.success? 
    @response.payKey 
    @api.payment_url(@response) # Url to complete payment 
else 
    @response.error[0].message 
end 

Где бы я положил настроенную версию этого кода в это было бы в моем OrdersController, ApplicationController или UserController? Я просто нуждаюсь в небольшом руководстве, пожалуйста.

ответ

0

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

0

В духе того, чтобы ваш код был более читаемым, вы можете поместить вышеуказанный код в класс в справочной системе или в папку libs и вызвать методы оттуда.

Хотя это довольно поздний ответ.

+0

Не могли бы вы подробнее рассказать о своем решении, добавив немного подробного описания вашего решения? – abarisone

Смежные вопросы