很难找到有关为用户创建一次性或单次收费的更多信息。我可能会根据我的工作解决方案编写一份简明易懂的指南。
目前我正在制作一个工作板,任何人都可以浏览列表,而用户(Devise)具有CRUD功能,可以发布工作。我想在Job#new form中嵌入一个Checkout,并在创建作业之前向用户收费。此Checkout可与Stripe一起使用以捕获信用卡详细信息,而不是将用户存储为重复客户;用户不应将其信用卡详细信息存储在文件中,并且每次要创建作业时都必须输入信用卡信息。
粗略概述我如何处理这个问题。如果这似乎合乎逻辑,请告诉我:
| before_action :authenticate_user!, only: [:new]
|
| def new
| @job = current_user.jobs.build
| end
|
| def create
| @job = current_user.jobs.build(jobs_params)
|
| if @job.save
| # Pass Stripe::Charge.create
| redirect_to @job
| else
| # Handle rescue Stripe::CardError
| render 'new'
| end
| end
我不确定这是否会对路线产生影响,这会改变我在Job#new中添加信用卡表单的方式,以获取[:stripeToken]。
= simple_form_for(@job) do |f|
| = f.input :title
| = f.input :company
| = f.input :location
| = f.input :url
| = f.button :submit
干杯