2013-07-15 2 views
0

Я использовал CodeIgniter как фреймворк PHP, а затем решил научиться SF вместо CI. Поскольку CI прекратил обновление новых версий.symfony2 - WI поставил мои классы моделей, я не нашел его

У меня есть

-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 и как я могу использовать доктрину в модели. как я могу включить функции доктрины.

Большое спасибо за помощь.

+0

Вы должны действительно прочитать [docs] (http://symfony.com/doc/current/book/doctrine.html) –

ответ

0

Я думаю, что это не очень хороший подход с использованием Doctrine 2. Вам следует рассмотреть возможность развязки логики сохранения/данных из вашей модели, поскольку Doctrine 2 не является активной реализацией записи.

Возможно, вам следует реализовать некоторые DAO и делегировать им процесс сохранения/загрузки ваших объектов данных/моделей? Тогда у вас не будет прямого доступа EntityManager к вашим контроллерам и вашей модели, и вы сможете получить ваши DAO как сервисы.

Смежные вопросы