Ruby on rails Rails:在有';创建时出错

Ruby on rails Rails:在有';创建时出错,ruby-on-rails,standards,billing,Ruby On Rails,Standards,Billing,所以我有一个订阅表单,用户同时创建一个新帐户,并订阅一个月计划 所以他们输入用户名、电子邮件、密码和所有常用的信用卡/账单信息 但我遇到的问题是,他们不小心输入了一个错误的信用卡号……处理这个问题的最佳方法是什么 我需要先创建用户帐户,这样我就可以有一个数据库行ID(用于第三方计费服务),但是由于我在我的create方法中一次性处理了所有这些,如果用户更正了他们的卡信息并重新提交,它会告诉他们帐户已经存在(因为用户帐户实际上已经创建) 所以,这里的问题是,你们将如何处理这个问题?你会把他们带到一

所以我有一个订阅表单,用户同时创建一个新帐户,并订阅一个月计划

所以他们输入用户名、电子邮件、密码和所有常用的信用卡/账单信息

但我遇到的问题是,他们不小心输入了一个错误的信用卡号……处理这个问题的最佳方法是什么

我需要先创建用户帐户,这样我就可以有一个数据库行ID(用于第三方计费服务),但是由于我在我的
create
方法中一次性处理了所有这些,如果用户更正了他们的卡信息并重新提交,它会告诉他们帐户已经存在(因为用户帐户实际上已经创建)


所以,这里的问题是,你们将如何处理这个问题?你会把他们带到一个只有账单数据的错误页面吗?或者别的什么?不确定处理此问题的最佳方法是…

不知道任何标准,但我确信最好的方法是在计费服务检查失败时删除新创建的用户帐户(在处创建的字段
可能有助于检测超时)


该机制是通过实现的,在Rails中不需要花费太多精力。但请确保您没有对数据库使用独占锁定。

在我看来,您可以用两种不同的方式来处理此问题

1) 只要在成功验证所有内容后保存数据即可。 您可以使用自定义验证来检查信用卡。 请参见snippets.dzone.com/posts/show/5266

2) 使用两种不同的模型(用户和信用卡)并使用find_或create (实际上,您也可以在一个模型中使用find_或create) 看