我在我的应用程序中遇到了一些问题。 我正在关注 https://launchschool.com/blog/basic-paypal-checkout-processing-in-rails 的教程使用 Paypal 处理付款,但是当我的应用程序重定向到沙盒 paypal 时,它只显示一个空白页面。
这是我的代码
订单 Controller
def create
@order = Order.new(order_params)
@order.add_line_items_from_cart(@cart)
respond_to do |format|
if @order.save
redirect_to @order.paypal_url(orders_path(@order))
else
render :new
end
end
订单模型
protect_from_forgery except: [:hook]
def hook
params.permit! # Permit all Paypal input params
status = params[:payment_status]
if status == "Completed"
@order = Order.find params[:invoice]
@order.update_attributes notification_params: params, status: status, transaction_id: params[:txn_id], purchased_at: Time.now
end
render nothing: true
end
secret .yml
development:
secret_key_base: 0351c7e4eb70df5503d739c085d7a75dae662a55e95cf257b4a2e3edaa6985623372b7d20fc3ea59fe58d9ec94243e36a7250007ad2d9734b68cf29f90cca682
paypal_host: https://www.sandbox.paypal.com
app_host: http://0.0.0.0:3000
路线.rb
post "/hook" => "orders#hook"
post "/orders/:id" => "orders#show"
抱歉我的英语不好..
最佳答案
respond_to 要求你指定 Action 将响应的格式,比如
respond_to do |format|
format.html { redirect_to .... }
end
或
format.any(:html, :js) { ... }
在你的情况下,你似乎不需要使用 respond_to
关于ruby-on-rails - 在 Ruby On Rails 上使用 Express Checkout Paypal,返回空白页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44782714/