0

CodeIgniter を PHP フレームワークとして使用していましたが、CI ではなく SF を学ぶことにしました。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() {       

   }

}

Model file で、doctrine 関数を使用してデータベースに接続し、データを取得したいと考えています。

Post_mode.php ファイルを SF のどこに配置すればよいですか? また、モデルで doctrine を使用するにはどうすればよいですか? 教義関数を含めるにはどうすればよいですか。

助けてくれてどうもありがとう。

4

1 に答える 1

0

Doctrine 2 を使用するのは良いアプローチではないと思います。Doctrine 2 はアクティブなレコードの実装ではないため、モデルから保存/データ スタッフ ロジックを分離することを検討する必要があります。

たぶん、いくつかのDAOを実装し、データ/モデルオブジェクトの保存/ロードのプロセスを委任する必要がありますか? 次に、コントローラーにもモデルにも直接 EntityManager アクセスがなく、DAO をサービスとして取得できます。

于 2013-07-15T08:37:26.247 に答える