首先建立一个接口文件 TestInterface.php 文件。
TestInterface.php
建立两个 Repository 文件,具体实现 TestInterface 接口。
Repository
TestInterface
进行绑定
增加到 app.php 文件中的 providers。
app.php
providers
控制器写法
问题:参照我控制器中的写法,如果是这样的话,那么写接口的意义就不大了,即使没有接口文件,我也可以使用两个 Repository 中的方法。请大佬们指教,控制器这里正确的打开方式。如果我在控制器这样使用接口,可是怎么使用,谢谢大佬们!
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
个人感觉网上的各种laravel教程中所提到的仓库模式,只适合于封装一些复杂的查询操作,其他再无用处。完全意义的仓库模式需要和领域模型进行合作,在laravel中,model并不能充当领域模型的角色。且也基本不存在仓库与laravel自带orm的解偶操作,因此定义针对model的interface意义也不大。
当然,这些仅仅是个人理解,欢迎讨论。领域驱动设计相关知识还需学习
不讨论这个仓库模式,你的代码里控制器构造函数部分注入的应该是接口
个人感觉网上的各种laravel教程中所提到的仓库模式,只适合于封装一些复杂的查询操作,其他再无用处。完全意义的仓库模式需要和领域模型进行合作,在laravel中,model并不能充当领域模型的角色。且也基本不存在仓库与laravel自带orm的解偶操作,因此定义针对model的interface意义也不大。
当然,这些仅仅是个人理解,欢迎讨论。领域驱动设计相关知识还需学习
不讨论这个仓库模式,你的代码里控制器构造函数部分注入的应该是接口