Tag: 条纹支付

耙子db:种子耙子中止了! ActiveRecord :: RecordInvalid:validation失败:已经收到电子邮件

我是OneMonth学习条纹支付的初学者。 现在,我正在学习如何创建产品表并为数据库设定种子。 到目前为止,一切顺利,直到我在运行rake db:seed后遇到问题 Davids-MBP-2:one_month_stripe_payments DKP $ rake db:seed rake aborted! ActiveRecord :: RecordInvalid:validation失败:已收到电子邮件 /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/active_record/validations.rb:79:in raise_record_invalid’ /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/active_record/validations.rb:43:in save!’ /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/active_record/attribute_methods/dirty.rb:29:in save!’ /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/active_record/transactions.rb:291:in save!’ /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/active_record/transactions.rb:291:in block in save!’ /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/active_record/transactions.rb:351:in block in with_transaction_returning_status’ /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in gems中的block in with_transaction_returning_status’ /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in在事务’/Users/DKP/.rvm/gems/ruby-2.3中的block in with_transaction_returning_status’ /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in块中。 0@global/gems/activerecord-4.2.5/lib/active_record/connection_adapters/abstract/transaction.rb:184:in within_new_transaction’ /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/active_record/connection_adapters/abstract/database_statements.rb:213:in事务’/Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/ active_record / transactions.rb:220:在transaction’ /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/active_record/transactions.rb:348:in with_transaction_returning_status’ /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/active_record/transactions.rb:291:in save!’ /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/active_record/persistence.rb:51:in save!’ /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activerecord-4.2.5/lib/active_record/persistence.rb:51:in create!’ /Users/DKP/Desktop/one_month/one_month_stripe_payments/db/seeds.rb:8:in ‘ /Users/DKP/.rvm/gems/ruby-2.3.0@global/gems/activesupport-4.2.5/lib/active_support/dependencies.rb:268:in […]

我可以在Rails 4应用程序中使用带有条带的活动商家中传递不同的货币吗?

我正在开发Rails 4应用程序,用户可以通过应用程序订阅一次性付费。 对于订阅,请使用带有条带的Active Merchant,现在用户现在支付50美元并成功完成付款。 下面的代码: ActiveMerchant::Billing::Base.mode = :test transaction = ActiveMerchant::Billing::StripeGateway.new(:login => Rails.application.secrets.stripe_secret_key) paymentInfo = ActiveMerchant::Billing::CreditCard.new( :number => purchage_params[:card_holder_number], :month => purchage_params[:expiry_month], :year => purchage_params[:expiry_year], :verification_value => purchage_params[:cvv]) purchaseOptions = {:billing_address => { :name => purchage_params[:card_holder_name], :currency => @country.currency, :address1 => session[:address], :city => session[:city], :state => @region.name, :zip => session[:zip_postal] }} response = transaction.purchase((amount […]

Rails:从服务器返回条带响应的JSON

我有多个客户端依赖我的服务器处理Stripe收费请求。 当处理费用时,我想向我的客户发回JSON,说明费用是否已成功创建,如果不是,则说明原因。 我的服务器可以在这里查看。 我的控制器的代码如下: class ChargesController params[:stripeEmail], :source => params[:stripeToken] ) charge = Stripe::Charge.create( :customer => customer.id, :amount => @amount, :description => ‘Rails Stripe customer’, :currency => ‘usd’ ) #*WHAT I TRIED DOING THAT DIDN’T WORK* # respond_to do |format| # msg = { :status => “ok”, :message => “Success!”} # format.json { render :json […]

为什么我的服务没有被正确声明?

我正在使用Stripe为我的应用创建付款服务。 我有: #app/services/service_error.rb class PaymentGateway::ServiceError < StandardError attr_reader :exception_message def initialize(message, exception_message: ) # Call the parent's constructor to set the message super(message) # Store the exception_message in an instance variable @exception_message = exception_message end end class PaymentGateway::CreateSubscriptionServiceError < PaymentGateway::ServiceError end 在我的控制器中我试图运行它: #app/controller/subscriptions_controller.rb class SubscriptionsController < ApplicationController rescue_from PaymentGateway::CreateSubscriptionServiceError do |e| redirect_to root_path, alert: e.message […]

如何修复此错误“未定义的方法`编码’为nil:NilClassa”并取消订阅计划工作?

这是我第一次使用Stripe和Rails,现在我正在尝试允许高级用户取消订阅。 我可以使用我的代码将用户从标准级别升级到高级别,但是当我尝试将高级用户降级到标准级别时,我遇到了问题。 我遵循了“取消订阅”的Stripe Ruby API参考: https : //stripe.com/docs/api? lang = ruby #cancel_subscription ,但是当我点击“取消订阅”按钮时出现此错误: NoMethodError – 未定义的方法encoding’ for nil:NilClass: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/cgi/util.rb:7:in (1.21 .0)lib / stripe / list_object.rb:19:在retrieve’ app/controllers/subscriptions_controller.rb:55:in downgrade’ 我的rails版本是4.2.1。 我的代码: class SubscriptionsController e flash[:error] = e.message redirect_to new_subscriptions_path end def downgrade customer = Stripe::Customer.retrieve(current_user.stripe_customer_id) customer.subscriptions.retrieve(current_user.subid).delete downgrade_user_to_standard flash[:success] = “Sorry to see you go.” redirect_to user_path(current_user) end […]

条纹“提供的API密钥无效”

我完全按照Stripe的Rails教程( https://stripe.com/docs/checkout/guides/rails )(复制和粘贴代码),但是当我运行rails时 PUBLISHABLE_KEY=pk_foo SECRET_KEY=sk_bar rails s 并转到localhost:3000 / charge / new并填写带有测试卡数据的字段(卡号“4242 4242 4242 4242”),但我得到了 Invalid API Key provided: ***********_*** 任何想法为什么会这样?

用于条带库令牌的Rails 4表单语法 –

我正在建立一个市场,并有一个表单来收集卖家的银行账户详细信息,以便我们可以转账付款。 其中一个条带参数是卖家名称,它是表单上的输入。 当我提交表单时,控制器只有在已经存储在数据库中时才读取名称(即如果我在db中手动输入名称,则运行表单)。 如果名称尚不存在,则会出现错误消息,说我需要输入名称来创建条带标记。 如何更改表单/方法,以便在用户点击提交时该名称可用于条带? 这是我的更新方法:错误在以下行中:name => current_user.bankaccname 。 这是下面粘贴的表单中的输入。 def update Stripe.api_key = ENV[“STRIPE_API_KEY”] token = params[:stripeToken] recipient = Stripe::Recipient.create( :name => current_user.bankaccname, :type => “individual”, :bank_account => token ) current_user.recipient = recipient.id current_user.save respond_to do |format| if @user.update(user_params) format.html { redirect_to edit_user_url, notice: ‘Your account was successfully updated.’ } else format.html { render […]

Rails“无桌面”模型

我专注于将我的逻辑转移到我的模型中。 我已经将Stripe Payments集成到我的Rails 4应用程序中,并且在我的一个标准(表格支持的)模型中处理与Stripe API的交互。 但是,我刚刚开始考虑是否应该为此场景引入无表模型(可能是stripe.rb )来处理API调用,创建新的Stripe客户,更新卡等。 任何人都对此有任何建议,如果你推荐一个新的模型,你可以突出一些我需要注意的关于无表格模型的领域。

Poltergeist Stripe checkout.js

我正在尝试在我的Rails应用程序中测试Stripe checkout弹出窗口( http://www.stripe.com/checkout )。 我正在使用Capybara + selenium-driver,一切运转良好。 加载页面后,checkout.js会添加一个iframe,我可以访问它 within_frame(‘stripe_checkout_app’) do do something end 现在,切换到Poltergeist,我收到此错误: 失败/错误:within_frame(’stripe_checkout_app’)执行Capybara :: Poltergeist :: FrameNotFound:找不到框架’stripe_checkout_app’。 如果我检查页面,就没有iframe。 所以我认为这个脚本 我用Poltergeist运行测试时没有加载。 更新 我尝试用Capybara-webkit运行测试,结果相同。 Failure/Error: Capybara.within_frame(‘stripe_checkout_app’) do Capybara::Webkit::InvalidResponseError: Unable to locate frame. 我也试着等了半分钟! 同 sleep 30 这些是我的webmock设置: RSpec.configure { |config| WebMock.disable_net_connect!(allow_localhost: true) } 更新2: ‘stripe_checkout_app’是iframe的名称。

Rails:条纹forms被发布两次

我在Enrollment#new上有一个条带forms的注册模型。 当用户提交表单时,它似乎是两次向Enrollment#create提交。 这是带条纹forms的new.html.erb: “stripeForm” do %> “Credit Card Number”, :class=>”form-control”, :maxlength => 19, :’data-stripe’=>”number”) %> “mm”, :class=>”form-control”, :maxlength => 2, :’data-stripe’=>”exp-month”) %> “yy”, :class=>”form-control”, :maxlength => 2, :’data-stripe’=>”exp-year”) %> “cvc”, :class=>”form-control”, :maxlength => 3, :’data-stripe’=>”cvc”) %> Register Now var ready; ready = function() { Stripe.setPublishableKey(“”); var stripeResponseHandler = function(status, response) { var $form = $(‘#stripeForm’); […]