当我们在ActiveRecord模型中有一个复杂的逻辑时,它变成了一场噩梦。现在我们正在维护一个复杂的rails项目。作为最复杂的模型之一,我们有超过4000行代码和超过140个回调。当新功能出现时,它会被压抑。没有人能分辨出哪个部件受到影响并需要更新。
有没有人对此案有任何建议?有没有更好的想法来组织回调?或者我们需要避免使用回调滥用,并且需要涉及任何其他解决方案?
答案 0 :(得分:0)
您需要考虑使用DCI模式。是你的情况。您可以在此SO问题中获得有关该问题的一些信息:DCI - Data, Context and Interaction - Successor to MVC?
答案 1 :(得分:0)
您可以将一些回调移至Observers。这可以使您的模型更轻。