如何在Stripe集成中修复此错误?

时间:2012-07-02 01:34:39

标签: ruby-on-rails stripe-payments

我在使用Rails应用程序运行Stripe时遇到了一些麻烦。当我尝试在我的本地环境中访问我的注册表单时,我收到此错误:

未定义的方法`card_number'

我的观点的相应代码如下:

<%= f.label :card_number, "Credit Card Number" %>
<%= f.text_field :card_number %>

因为我收到卡号的错误,我也知道当我修正卡号的错误时,我会收到CVV代码和卡有效期的错误。我意识到我不应该将任何信用卡信息保存到我的数据库中,因此我的模型中没有关于信用卡信息的任何信息。我运行的唯一数据库迁移是在users表中为条带客户ID令牌设置一个列。

我非常感谢您为Stripe up and working提供的任何帮助!

1 个答案:

答案 0 :(得分:1)

调用f.text_field :card_number期望f.object上的属性(真实或虚拟)......所以,请改为:

=label_tag :credit_card
=text_field_tag :credit_card

这些不会绑定到您的模型,但会存在于表单上....您可以通过javascript获取它们(这是真正的重点)。

你会把它与:

结合起来
=f.hidden_field :card_token

并实际存储card_token以供日后使用。