0

我从大约 2007 年开始使用 Doctrine。我最近拿起了 Symfony2,其中包括 Doctrine 2,从我的角度来看,Doctrine 2 比 Doctrine 1 差得多。

似乎特别愚蠢的一件事是我必须做这样的事情才能检索某个记录:

$em->getRepository('VNNPressboxBundle:School')->find($id);

在教义 1 中,我相信我会做这样的事情:

Doctrine::getTable('School')->find($id);

冗长不是困扰我的。问题是任何我想对数据库做任何事情的地方,我都必须有一个$em可用的。这意味着我必须有很多这样的方法:

public function foo($em, $something, $somethingElse)
{
}

public function bar($em, $thing)
{
}

public function baz($whatever, $whateverElse)
{
}

$em拖着这些实例到处乱跑感觉不对。它也与该方法的真正作用无关。此外,我必须记住,每次我调用一个方法时,“这个方法需要$em还是不需要?” 这完全是蹩脚的。我想知道我是否做错了,或者这只是他们希望你使用它的方式。肯定感觉不对。

不幸的是,我读过的 Doctrine 文档似乎重于实践而轻于理论。我在哪里可以找到关于 Doctrine 2 背后的设计决策的一些好的文档

4

1 回答 1

0

似乎如果你想了解 Doctrine 2,了解一点面向服务的架构和依赖注入是有帮助的。

于 2013-03-01T21:40:38.313 回答