Laravel为所有雄辩的模型添加自定义方法
我正在寻找一种方法来添加一些将在所有模型中使用的自定义方法。我可以想象三种方法:Laravel为所有雄辩的模型添加自定义方法,laravel,laravel-5,eloquent,laravel-5.2,laravel-eloquent,Laravel,Laravel 5,Eloquent,Laravel 5.2,Laravel Eloquent,我正在寻找一种方法来添加一些将在所有模型中使用的自定义方法。我可以想象三种方法: 将自定义方法添加到main Eloquent的Model.php类文件中(我希望避免这样做,因为这是一个核心文件) 使用所需的自定义方法创建自定义模型类,该类将扩展到eloquent的模型类,并且项目中的所有模型将扩展到自定义模型类 添加一个将包含我的方法并包含在所有模型中的特性 然而,我希望能以最好的方式更有效地完成这项工作。他们还有别的办法吗 PS我正在使用laravel 5.2作为一个老项目。根据评论讨论并添
PS我正在使用laravel 5.2作为一个老项目。根据评论讨论并添加我在laravel的经验,我建议您使用@ceejayoz在评论中指定的#2或#3方法 第一种方法肯定是不好的,因为您需要修改核心,这根本不是一个好的实践。第二和第三都是好方法 但是,在此之前,你需要检查你的需求,如果所有的模型(包括你的应用程序将来会有的任何模型)都需要额外的功能,但是你可以对所有模型使用traits
如果我有选择的话,我可能会选择traits而不是定制模型,因为traits相对简单,那么定制模型肯定是个糟糕的方法#2和#3都是很好的方法。如果所有型号(包括你的应用程序将来会有的任何型号)都需要额外的功能,我会使用#2,和#3如果他们中只有一些人愿意。谢谢@ceejayoz:)如果你已经解决了你的问题或疑问,请不要投反对票,然后发布适当的答案,以便其他人可以从你的问题中获得帮助谢谢:)请接受答案,这样这个问题就可以结束谢谢:)