我正在尝试在我的网站上实施Stripe付款。我的关联,信用卡属于用户,并且用户有很多信用卡。这是我的credit_card_service
代码:
class CreditCardService
def initialize(user_id, card)
@user = User.find(user_id)
@card = card
end
def create_credit_card
customer = Stripe::Customer.retrieve(@user.customer_id)
customer.sources.create(source: generate_token).id
end
def generate_token
Stripe::Token.create(
card: {
number: @card[:number],
exp_month: @card[:month],
exp_year: @card[:year],
cvc: @card[:cvc]
}
).id
end
end
当我希望我的用户保存他们的信用卡时,出现此错误:
无法确定要请求的URL:Stripe :: Customer实例具有无效的ID:nil
我认为这行代码会引起问题:
customer = Stripe::Customer.retrieve(@user.customer_id)
但是我不知道问题是什么。我不了解我的客户ID是nil
。任何帮助将不胜感激。