加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – Codeigniter 2中的服务层,带有Doctrine 2

发布时间:2020-12-13 22:45:34 所属栏目:PHP教程 来源:网络整理
导读:希望你们中的一些人能够帮助我. 我在使用Codeigniter 2和Doctrine 2的项目中工作,一切正常,但我有一些“理智”问题我想解决. 我现在面临的主要问题是坚持实体. 在正常的MVC中,持久性应该在模型中,但现在我只有实体和存储库而我没有所谓的“模型”,我将所有这
希望你们中的一些人能够帮助我.

我在使用Codeigniter 2和Doctrine 2的项目中工作,一切正常,但我有一些“理智”问题我想解决.

我现在面临的主要问题是坚持实体.
在正常的MVC中,持久性应该在模型中,但现在我只有实体和存储库而我没有所谓的“模型”,我将所有这些代码放在控制器中使它们变得巨大而且令人生畏:(

我在一些地方读过,最好的方法是在Controller和实体之间有一个“服务”层,但由于经典的MVC模式很难,我在Codeigniter中找不到一个很好的方法.

所以即时通讯要求就如何实现这一点提出一些建议.
你们中的任何人都有同样的问题吗?

解决方法

我找到了解决问题的方法,希望它对你们有些人有用.

我正在使用Joel的Verhagen整合Codeigniter 2和Doctrine 2,你可以阅读他的文章了解更多细节“http://www.joelverhagen.com/blog/2011/05/setting-up-codeigniter-2-with-doctrine-2-the-right-way/”

简单来说,我正在做的是使用Codeigniter的模型作为服务层.
这是我能找到的最干净的方法,主要是因为所有“布线”已经由Codeigniter完成,所以我没有做任何其他事情:D.

我不得不对Joel实现的文件夹结构进行一些修改,这样我就可以使用CI的模型并仍然使用他的Doctrine代码.
所以我将所有内容从“模型”文件夹中移动到一个名为“实体”的新文件夹(我知道它可能不是最好的名字,但它可以工作:P).
然后我更改了对新文件夹的所有引用,并检查一切是否正常.

就是这样,现在我的“服务层”工作了,我的代码更清洁了.

如果你们中的一些人需要帮助,请随时问我.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读