【问题标题】:Rails "table-less" ModelRails“无表”模型
【发布时间】:2013-10-15 13:30:09
【问题描述】:

我专注于将我的逻辑转移到我的模型中。我已经将 Stripe Payments 集成到我的 Rails 4 应用程序中,并且与 Stripe 的 API 的交互在我的一个标准(表支持)模型中得到处理。

但是,我刚刚开始考虑是否应该为这种场景引入一个无表模型(可能是 stripe.rb)来处理 API 调用、创建新的 Stripe 客户、更新卡片等。

任何人都对此有任何建议,如果您推荐一种新模型,您能否强调一下我需要注意的关于无表模型的一些领域。

【问题讨论】:

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


    【解决方案1】:

    您可以将 api 的逻辑提取到服务对象中。

    这很简单。只需在您的应用程序目录中创建一个 services 文件夹,您放置其中的任何 *.rb 文件都将默认在 rails 4 中自动加载。

    查看以下文章了解更多想法

    http://blog.codeclimate.com/blog/2012/10/17/7-ways-to-decompose-fat-activerecord-models/

    【讨论】:

    • 看起来很有趣 - 今晚晚些时候会仔细看看 - 谢谢
    • 我已经让服务与 Stripe 进行通信,但是知道如何在服务类中捕获错误并将它们返回给控制器吗?例如,我无法使用 Flash 或 errors.add,因为我收到错误消息。
    • 你可以include ActiveModel::Validations查看api.rubyonrails.org/classes/ActiveModel/Validations.html
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-16
    相关资源
    最近更新 更多