2011-02-10 2 views
4

Я читал Symfony2 documentation, но я не совсем понимаю (как создать модель, репозиторий, настроить doctrine.orm в config.yml и другие простые вещи, которые легки в sf 1). Поэтому я ищу небольшой пример, который использует Symfony2. Очень простой пример (например, sandbox, но немного более продвинутый) со страницей, в которой перечислены содержимое таблицы с доктриной ORM и страница редактирования/новой страницы. Я ничего не нашел на GitHub! Документация сайта с реальным примером будет очень полезна! Большое спасибо ...Простой пример с Symfony2

я продолжаю погружение в SF2 ...

+1

Я нашел https://github.com/carlossg00/symfony2-jobeet – acubens

+0

Может быть, вы хотите взглянуть на некоторые из этих статей для help: [Symfony2 articles] (http://inchoo.net/author/darko.goles/) –

+0

Здесь вы можете найти практическое руководство по созданию блога: http://www.dobervich.com/2011/03/05/Symfony2-блог-приложения учебник-часть-II-The-данные модель / – yuri

ответ

1

Symfony2 Bundles является ценным источником приложений Symfony2 на основе и третьих сторон пучков.

Однако вы должны иметь в виду, что многие проекты, которые вы можете обнаружить, устарели, поскольку Sf2 все еще нестабилен и его API довольно часто изменяется.

В принципе, все, что вам нужно сделать, это:

  1. Убедитесь, что пучки доктрин включены в вашем ApplicationKernel.
  2. Убедитесь, что он правильно настроен:

    doctrine.dbal: 
        driver: pdo_pgsql 
        host:  127.0.0.1 
        user:  root 
        password: password 
        dbname: my_database 
        charset: utf8 
    
    doctrine.orm: 
        mappings: 
         MyApplicationBundle: ~ 
         SomeThirdPartyBundle: ~ 
    
  3. Создайте несколько объектов.

  4. Хотя вы можете использовать репозитории Doctrine2, я не являюсь их большим поклонником. ИМО лучше создавать своих собственных менеджеров (они могут использовать оригинальные репозитории), которые обеспечат прозрачный API. Вы не должны идентифицировать свой модельный слой только как ORM. Вы можете проверить UserBundle by FriendsOfSymfony, поскольку их подход довольно хорош.

Окончательное использование:

$posts = $this->get('myapp.post_manager')->findRecentlyUsed(new \DateTime('-1 week')); 

return $this->render('MyApp:Post:list.html.twig', array(
    'posts' => $posts 
)); 
1

Symfony DIC и конфигурации изменился!

Теперь вы должны использовать, как это н в вашем config.yml:

doctrine: 
    dbal: 
     driver: pdo_pgsql 
     host:  127.0.0.1 
     user:  root 
     password: password 
     dbname: my_database 
     charset: utf8 

    orm: 
     mappings: 
      MyApplicationBundle: ~ 
      SomeThirdPartyBundle: ~ 
Смежные вопросы