簡體   English   中英

自動將Devise用戶設置為Stripe客戶

[英]Automatically Setting a Devise User as a Stripe Customer

我的策略是這樣的:

  1. 讓用戶注冊
  2. 自動將該用戶與Stripe ID關聯

我如何嘗試實現這一點:

我創建了一個Users控制器,並使其從RegistrationController繼承:

devise_for :users, :controllers => { :registrations => 'users'}

保存用戶后,我創建了一個回調:

after_save :set_stripe_customer_id

private
def set_stripe_customer_id
end

現在,我認為這里需要的是:

current_user.update_attribute(:stripe_id => ....

該文檔顯示如下代碼

Stripe::Customer.create(
  :description => "Customer for test@example.com",
  :card => "tok_1046el4BfU4hLNTvxYcIz4rE"
)

問題是,我不希望我的客戶一定要立即把他的卡放進去。 雖然,這沒什么大不了的,但我可以等待注冊直到實際購買為止。 我的問題是使回調自動創建Stripe客戶所需的最簡單,最少的代碼是什么?

Stripe::Customer.create所有參數都是可選的,因此您可以像下面這樣簡單地做一些事情:

def set_stripe_customer_id
  customer = Stripe::Customer.create
  current_user.update_attributes :stripe_id => customer.id
end

然后再為該客戶進行訂閱,或根據需要更新各種詳細信息。

盡管我會說這不是真的必要。 等待直到您真正需要客戶來做(例如,因為他們正在訂閱),才沒有真正的負面影響。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM