为 ActiveMerchant CreditCard 对象实现 find()、save() ActiveRecord 方法
Posted
技术标签:
【中文标题】为 ActiveMerchant CreditCard 对象实现 find()、save() ActiveRecord 方法【英文标题】:Implement find(), save() ActiveRecord methods for ActiveMerchant CreditCard object 【发布时间】:2010-12-07 21:18:05 【问题描述】:在 Ruby on Rails 应用程序中为 ActiveMerchant ActiveMerchant::Billing::CreditCard 对象实现 ActiveRecord 的 find()
和 save()
方法的最佳方法是什么?
我希望我的信用卡对象继承自 ActiveRecord 和 ActiveMerchant。
警告:我知道将信用卡信息保存到数据库总是被认为是个坏主意,最好使用便于您存储卡的网关。假设这是必要的,并且满足了合适的安全标准(PCI DSS、文件系统和数据库加密、网络分离等)。
【问题讨论】:
【参考方案1】:我使用以下方法创建了一个标准 Rails ActiveRecord 模型:
./script/generate model CreditCard first_name:string last_name:string number:string month:integer year:integer type:string start_month:integer start_year:integer issue_number:string
这与信用卡的 ActiveRecord 定义相匹配。
此外,ActiveMerchant 提供ActiveMerchant::Billing::CreditCardMethods
,引用 ActiveMerchant 开发团队的话说是:
可包含在自定义信用卡对象中的便捷方法,例如基于 ActiveRecord 的信用卡对象。
我已将ActiveMerchant::Billing::CreditCardMethods
包含在我的信用卡模型中,并将翻译验证以确保我对信用卡的定义与 ActiveMerchant 的匹配。
【讨论】:
以上是关于为 ActiveMerchant CreditCard 对象实现 find()、save() ActiveRecord 方法的主要内容,如果未能解决你的问题,请参考以下文章
ActiveMerchant PaypalExpress 网关 - 设置谁支付费用
ActiveMerchant 规范无法连接到 API,而开发模式使用相同的凭据工作正常
在 Shopify 中使用 ActiveMerchant 的 Paypal Express 结账
如何使用 ActiveMerchant 和 PayPal Express 跳过订单确认页面
如果 gem 源指定为 git,则 ActiveMerchant ActionView 帮助程序初始化崩溃,但如果它是默认路径或本地路径则有效