2012-03-14 86 views
0

當我們在ActiveRecord模型中有一個複雜的邏輯時,它變成了一場噩夢。現在我們正在維護一個複雜的rails項目。作爲最複雜的模型之一,我們有超過4000行代碼和140多個回調。當新功能進入時,它很鬱悶。沒有人能分辨哪個部分受到影響,需要更新。如何在非常複雜的情況下使用ActiveRecord回調?

有沒有人有案件的建議?有什麼更好的想法來組織回調?或者我們需要避免使用回調進行濫用,並且需要涉及任何其他解決方案?

回答

0

您需要使用DCI模式進行思考。對你的情況做。你可以在這個問題中得到一些關於這方面的信息:DCI - Data, Context and Interaction - Successor to MVC?

+0

我們已經考慮過了。任何寶石的工作?或者你有任何樣品? – 2012-03-15 05:13:42

+0

我添加一個鏈接到一個關於這個問題的SO問題。 – shingara 2012-03-15 08:52:19

0

你可以將一些回調移動到Observers。這可以使你的模型更輕。

+0

我認爲我們已經在使用回調。如果我將回調更改爲Observer。它將被用於觀察者。問題仍然存在。 – 2012-03-15 05:15:37

相關問題