Rails将子错误与父级合并

时间:2015-02-04 20:15:20

标签: ruby-on-rails devise stripe-payments

我正在使用条带设置付款系统。我的信用卡模型在我的用户模型中显示条带错误时出现问题,因为第一张信用卡是作为用户的孩子提交的。此外,我正在为我的用户使用Devise。

class CreditCard < ActiveRecord::Base

  def create_stripe_credit_card
    customer = Stripe::Customer.retrieve(self.user.stripe_customer_id)
    credit_card = customer.cards.create(:card => self.stripe_token)
    rescue Stripe::CardError => e
      logger.error "Stripe Error: " + e.message
      errors.add(:base, "#{e.message}")
      false
  end

end

class RegistrationsController < Devise::RegistrationsController

  def create
    build_resource(sign_up_params)

    if resource.save
      # User created
    else
      clean_up_passwords resource
      return render :status => 400, :json => resource.errors
    end
  end
end

经过一些谷歌搜索后,我遇到了这个问题

Ruby on Rails: how to get error messages from a child resource displayed?

但似乎我必须在我的CreditCard模型中放置一个验证器来触发我的User模型中的错误,并且因为提出此错误的唯一方法是尝试它,不知道如何将它放入验证

非常感谢任何帮助。

0 个答案:

没有答案