Yii从一个(非常)胖的模型中移出规则

时间:2014-07-12 15:23:51

标签: activerecord yii

在一个大型应用程序中,其中一个主要模型是Venue,它已经有大约50条规则,超过80行。模型本身已经开始增长到超过1000行代码,所以我开始分解它。

首先我开始搬出一些价值物品。我在想是否将规则移到单独的虚拟类中是合适的,例如:

class Venue {
...

    public function rules() {
        return VenueRules::getRules();
    }

...
}

管理模型中的规则是否有更好的方法?

1 个答案:

答案 0 :(得分:0)

这是最好的方法。您还可以使用包含更大方法的类来扩展模型。我们喜欢使用服务来减少我们的模型,并将业务逻辑与其分开。