重复的模型方法

时间:2017-11-03 05:30:42

标签: laravel eloquent

我写了一些模型并注意到我有重复的方法 - 在所有或大多数模型中使用的方法。

将它们移植到另一个文件并根据需要添加到模型的最佳方法是什么?

性状?

1 个答案:

答案 0 :(得分:1)

恕我直言创建一个抽象类DomainModel,使用Illuminate\Database\Eloquent\Model扩展此类,最后在MyModel

中使用这些特征
use Illuminate\Database\Eloquent\Model

abstract class DomainModel extends Model
{
    use ModelMethods1, ModelMethods2

}

然后在模型classe

中扩展DomainModel
class User extends DomainModel
{

}

这为您提供了灵活性。

  1. 扩展您的Model Classes Illuminate\Database\Eloquent\ModelDomainModel
  2. 您可以在任何Model Class
  3. 中独立使用您的特质

    我在大型项目中使用过这种方法,效果非常好。