【问题标题】:How to use ActiveRecord callbacks in very complicate case?如何在非常复杂的情况下使用 ActiveRecord 回调?
【发布时间】:2012-03-31 02:07:58
【问题描述】:

当我们在 ActiveRecord 模型中有一个复杂的逻辑时,这将成为一场噩梦。现在我们正在维护一个复杂的 Rails 项目。作为最复杂的模型之一,我们有 4000 多行代码和 140 多个回调。新功能来了就郁闷了,没人知道哪个部分受到影响,需要更新。

有人对这个案子有什么建议吗?组织回调有更好的主意吗?或者我们需要避免滥用回调,并且需要涉及任何其他解决方案?

【问题讨论】:

    标签: ruby-on-rails activerecord callback


    【解决方案1】:

    您需要考虑使用 DCI 模式。是做你的情况。您可以在这个 SO 问题中获得一些相关信息:DCI - Data, Context and Interaction - Successor to MVC?

    【讨论】:

    • 我们已经考虑过了。有什么宝石在研究它吗?或者你有这方面的样本吗?
    • 我添加了一个指向 SO question 的链接。
    【解决方案2】:

    您可以将一些回调移动到 Observers 。这可以使您的模型更轻。

    【讨论】:

    • 我认为我们过度使用了回调。如果我将回调更改为观察者。它将过度使用观察者。问题依然存在。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多