Я создаю приложение с помощью Rails 5, Ruby 2.4.0 и гем stripe
.
У меня есть шаблон продукта, и когда я создаю продукт, если он сохраняется, я хочу, чтобы он затем отправил продукт в полосу и создал продукт там, а также вернул идентификатор продукта полосы в запись продукта.
Сам продукт сохраняется, так как я могу запросить его в консоли, и он появляется на странице индекса, однако, когда он отправляет в полосу, я получаю следующую ошибку.
Мой файл ApplicationController:
class ApplicationController < ActionController::Base
require "stripe"
protect_from_forgery with: :exception
end
Мой файл инициализатора ПОЛНОЙ полосы: config/initializers/stripe.rb
Rails.configuration.stripe = {
:publishable_key => ENV['STRIPE_PUBLISHABLE_KEY'],
:secret_key => ENV['STRIPE_SECRET_KEY']
}
Stripe.api_key = Rails.configuration.stripe[:secret_key]
Действие создания контроллера моего продукта:
def create
@product = Product.new(product_params)
respond_to do |format|
if @product.save
format.html { redirect_to @product, notice: 'Product was successfully created.' }
format.json { render :show, status: :created, location: @product }
product = Stripe::Product.create({
name: @product.prod_name,
type: @product.prod_type,
statement_descriptor: @product.statement_descriptor,
unit_label: @product.unit_label,
product_status: @product.product_status
})
else
format.html { render :new }
format.json { render json: @product.errors, status: :unprocessable_entity }
end
end
end
Любая помощь здесь будет очень признательна, так как у меня очень мало опыта работы с полосами, и я не могу разобраться с этим!
Итак, как только это будет создано, как я могу добавить сгенерированный product_id, который создает полоса, и сохранить его в продукте, который я создал в рельсах?