#4й дайджест материалов по Symfony2

Как-то затянулся у меня 4й дайджест материалов. Уже и релиз Symfony2 состоялся, а я все никак не могу к добраться к публикации :).

Блоги посвященные Symfony2

Рекомендую подписаться на RSS лету блога — http://www.craftitonline.com/. Льюис контрибютит Symfony2 и часто выкладывает новые материалы.

Буквально вот только что наткнулся на интересный блог @qpleple, на котором есть серия хороших статей:

Как раз во время их прочтения решил, что материалы заслуживают добавления в дайждест и поэтому переключился на блог :).

На блоге http://webb-on-the-web.com/ Роджер Вебб написал всего пару статей, но обе на тему Symfony2. Итак:

Отдельные материалы на тему Symfony2

Symfony2: Checking Coding Standards — о том как проверять стандарты кодирования Symfony2 используя PHP_CodeSniffer. Сразу описана интеграция в Phing и Jenkins (Hudson).
И тут же в комментариях Кирилл Чебунин поделился линком на инфу о том, как это можно прикрутить к NetBeans — Coding Standards in NetBeans IDE with PHP CodeSniffer.

Symfony2 and DoctrineExtensions — о том как подключать Timestable, Sluggable, etc. Все довольно просто подключается и относительно хорошо работает.

Adding non-entity fields to your Symfony2 forms — название опять же говорит само за себя. К примеру, это можно использовать для форм в которых есть поле апдлоада.

Behat turns 2! Have fun and test what — Behat2 стал ещё лучше :). Либа довольно интересная и в хозяйстве полезная. Сейчас уже доступна версия 2.1.2.

Установка и настройка функционального тестирования в Symfony2 с помощью Behat и Mink — заметка на Хабре после которой я решил все таки попробовать Behat на живом проекте.

Использование Zend GData в Symfony2-проекте
— ещё одна заметка на Хабре, но уже на другую тему. Я с Gdata пока не работал. Вы работали? Для каких задач?

Symfony2\SecurityBundle — перевод «Symfony2 Blog Application Tutorial Part V: Intro to Security». Стоит прочитать.

Все

Если дочитали до этого места, то отпишитесь в комментариях. Давайте обсудим материалы или так про жизнь потрещим. Скучно без комментов то (:

Кстати на Symfony Camp идете? 29го октября я буду выступать там с докладом “Symfony2. На чем можно сэкономить время при разработке?“. Прошлогодний кемп мне очень понравился.

Дамп сущности в Doctrine2

Решил записать, а то постоянно забываю 🙂

В Doctrine2 дамп сущности или коллекции можно вывести используя статический метод

Doctrine\Common\Util\Debug::dump($entity)

На выходе получим что-то типа:

array
  0 => 
    object(stdClass)[318]
      public '__CLASS__' => string 'Application\PortfolioBundle\Entity\Category' (length=43)
      public 'id' => int 6
      public 'name' => string 'Веб-разработка' (length=27)
      public 'slug' => string 'web-development' (length=15)
      public 'description' => string 'В работе используем PHP (Zend Framework, Doctrine, Smarty, PEAR), JavaScript (jQuery, YUI, MooTools), SQL (MySQL, PgSQL), HTML/XHTML, CSS, багтрекеры и системы контроля версий. С радостью беремся за решение сложных и нестандартных задач.' (length=337)
      public 'projects' => string 'Array(20)' (length=9)
  1 => 
    object(stdClass)[304]
      public '__CLASS__' => string 'Application\PortfolioBundle\Entity\Category' (length=43)
      public 'id' => int 7
      public 'name' => string 'Веб-дизайн' (length=19)
      public 'slug' => string 'web-design' (length=10)
      public 'description' => string 'Первое впечатление о сайте, которое формируется у посетителя, очень сильно зависит от его дизайна и удобства использования. Мы поможем сделать это впечатление наиболее положительным, разработав красивый и функциональный дизайн для Вашего сайта.' (length=452)
      public 'projects' => string 'Array(5)' (length=8)

Подключаем DoctrineMigrationsBundle и DoctrineFixturesBundle к проекту на Symfony2

UPD. После релиза Symfony2 некоторые вещи описанные в этой заметке изменились. Советую читать офф. документацию по работе с DoctrineMigrationsBundle и DoctrineFixturesBundle.

DoctrineMigrationsBundle и DoctrineFixturesBundle необходимы для работы с миграциями и фикстурами Doctrine2 посредством консоли Symfony2. Изначально они были в основном репозитории Symfony2, но недавно их оттуда убрали.

Как подключить?

Для подтягивания кода сторонних либ к проекту я использую скрипт bin/vendors.sh (по аналогии с скриптом из symfony-standard).

В этом скрипте, за инициализацию и апдейт вышеперечисленных либ/бандлов отвечают следующие строки:
Continue reading

Symfony2 и Doctrine2 Repository

Я тут подумал, что лучше писать меньше, но чаще :). Хочется конечно написать большой материал, но времени постоянно не хватает.

Symfony2 и Doctrine2 Repository.

На форуме Игорь Негруца сделал мне замечание по поводу построения DQL запросов прямо в коде контроллеров. Есть такое дело и давно хотелось его поправить.
Continue reading

Doctrine2 Behavioral Extensions

Как-то поверхностно я с Doctrine2 разобрался. Уже несколько раз ловил себя на мысли, что использую далеко не все возможности, а о многих наверное и не в курсе. Поэтому решил поковырять её более предметно.
Continue reading