0

我使用 CodeIgniter 作为 PHP 框架,然后我决定学习 SF 而不是 CI。因为 CI 停止更新新版本。

我有

-src -Post -PostBundle -PostController -CommentController ......

我想使用一个名为 Post_model 的模式。

在 Post_model 类中,我想使用这些功能,

class Post_model {

   public function LastTenPosts() {

      $posts= $this->getDoctrine()
              ->getRepository('PostPostBundle:Posts') 
                  .................. etc ...........           

   }
   public function MostPopulerPosts() {

     /*  I want to use doctrine in theese functions  */            

   }
   public function MostCommentedPosts() {       

   }

}

在模型文件中,我想使用学说函数来连接并从我的数据库中获取数据。

我应该将我的 Post_mode.php 文件放在 SF 中的什么位置以及如何在模型中使用学说。我怎样才能包含教义功能。

非常感谢您的帮助。

4

1 回答 1

0

我认为这不是使用 Doctrine 2 的好方法。你应该考虑从你的模型中解耦保存/数据逻辑,因为 Doctrine 2 不是一个活动记录实现。

也许你应该实现一些 DAO 并将保存/加载数据/模型对象的过程委托给它们?然后,您的控制器和模型中都没有直接的 EntityManager 访问权限,并且能够将您的 DAO 作为服务获取。

于 2013-07-15T08:37:26.247 回答