我在app / Repositories中创建了一些Repositories类,如SeriesRepositoryCommentRepository等。我这样做的想法是抽象数据库调用,所以我可以使用Eloquent或查询构建器甚至原始SQL,如果我愿意,而不必更改查询在代码中的数千个地方。

由于我将这个项目作为开源发布,我决定为每个存储库添加一个接口。 这样,任何可能使用该项目的人都可以创建自己的特定存储库版本并只实现该接口。 这有点矫枉过正吗? 这只是过度工程吗? 我应该跳过界面吗?

===============>>#1 票数:0 已采纳

作为最佳实践,建议编写接口代码,特别是可扩展项目。 您可能有兴趣检查以下Laravel Repository Package,以完成大部分已完成的工作并按您所需的方式进行抽象: https//github.com/rinvex/repository

它是一个简单,直观,智能的Active Repository实现,为Laravel提供了极其灵活和精细的缓存系统,用于抽象数据层,使应用程序更易于维护。 下图显示了它的工作原理:

这是一个简短的工作原理图

  ask by Ivan Atanasov translate from so

未解决问题?本站智能推荐:

1回复

在Laravel 5.x中使用Repository Pattern时,我们是否应该仅使用控制器中的叙述方法?

我在Laravel中有一个典型的存储库模式结构。 以水果模型为例我有: 类EloquentFruitRepository扩展抽象EloquentRepository实现FruitRepositoryInterface 。 FruitRepositoryInterface扩展了Rep
1回复

Laravel上的存储库模式

我想使用Repository Pattern但我坚持语法。 我想得到我的函数index()。 第一步,我创建文件夹Repositories然后创建文件AuteurRepository.php 在我的文件AuteurController中我有这个: 在我的模型中,我只有
1回复

存储库模式laravel的逻辑

我正在学习使用Laravel框架。 我碰到了存储库,说在几个站点上进行开发是一种很好的做法。 我找到了一些可帮助在Laravel中实施此做法的软件包,但缺少了一些功能,但我认为我无法很好地理解其逻辑及其好处。 考虑研究这一部分,我创建了一个程序包,该程序包说明了如何看待此实现,
3回复

使用Laravel实现存储库模式

最近我开始研究Laravel 4及其功能。 我想实现Repository模式以在那里移动模型逻辑。 在这一点上,我面临着如何组织它的一些不便或误解。 一般问题我有这样的事情: 是否有可能在Laravel实现和应用这种模式而不会头痛,是否值得 ? 这个问题将分为几个部分,这引起了我的困
1回复

Laravel:ORM独立存储库模式

我偶然发现了有关在Laravel中实现存储库模式的不同文章,所有这些使我感到困惑。 他们每个人都在强调“保持ORM独立性”,但实际上没有人显示示例代码。 我在这里使用我的存储库样本结构,我认为它在某种程度上不是ORM独立的。 但是我需要使用REAL REPOSITORY PATTERN
2回复

Laravel:服务/存储库模式和复制代码

在我的项目中,我决定使用服务模式(可能使用存储库模式)来处理应用程序中的业务逻辑。 我有一个Client模型,它代表一个客户和一个相应的ClientService ,负责客户特定的业务逻辑。 比方说,我有另一个服务UserService ,它与上面的ClientService类似,它有
1回复

API调用位于存储库模式laravel应用程序中的哪个位置?

我正在构建一个包含第三方api集成的Web应用程序 支付网关 短信供应商 电子邮件提供商,如mandrill 现在我可以拥有具体的存储库类,其中与我的数据库通信的函数所在。 据我所知,存储库是用于与数据库通信的标准实践。 现在我在哪里构建调用第三方API的逻
2回复

存储库模式和共享实体

我正在考虑使用存储库设计模式进行数据抽象,我正在使用Phalcon PHP框架并使用以下结构: 现在,如果我必须在另一个ModelB中使用相同的Entity2.php,我将失去对存储库模式的最方便的使用,即我只能通过修改RepositoryA.php来改变Entity2.php的数据源。
2回复

MVC和存储库模式:控制器,模型和存储库的角色?

所以我一直在研究存储库模式的作用,作为在MVC框架中将持久层与我的模型分离的一种方法。 在此之前,我可能会让我的UserModel直接调用活动记录方法,以便存储/检索域对象。 这是我正在思考的关于应该创建新User的请求中的调用堆栈的草图: 这是我的问题: 这是存储库模
2回复

Laravel Eloquent存储库-查询给出了意外结果吗?

我正在使用laravel雄辩的查询来获取属于某个系的所有学生的结果。 关系是这样的:每个部门都有课程。 每个班级都有学生。 如果我们是在MySQL上编写的,则可以有两个版本:假设我们希望学生属于部门5。 1。 select * from class inner join