Архивы по тегуsymfony

Symfony 2 и 3. Как использовать сервис-контейнер в конструкторе контроллера

Бывают ситуации, когда в конструкторе контроллера нужно вызвать сервис-контейнер, но выводится ошибка: Error: Call to a member function get() on null in vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Controller/Controller.php at line 350 Есть простое решение данной проблемы.

Symfony 2. Мультиязычность контента

Недавно передо мной стояла задача сделать мультиязычность контента у сайта, написанного с использованием фреймворка symfony 2. Из мануалов было ясно, что встроенная мультиязычность подходит только для перевода интерфейсов. Мне нужна возможность определения у каких полей сущностей будет перевод, а у каких не будет перевода. Нашел библиотеку Doctrine2 Behaviors от KnpLabs. В документации есть инструкция по […]

Symfony: получить путь в контроллере

Для работы с путями в Symfony 2 есть сервис router. Для генерации пути можно воспользоваться методом generate, который на вход принимает уникальное название пути и массив с аргументами. public function homepageAction() { $path = $this->get(‘router’)->generate(‘homepage’, array())) return new Response($path); } В результате выведется путь до главной страницы с учетом окружения.

Symfony 2: проверка полей на уникальность и прочие валидации

При создании сущностей в Symfony, а точнее, в yml-файле конфигурации можно задать различные свойства для полей, на основе которые потом будет строиться форма (а следовательно, клиентская валидация) и создаваться таблица в базе данных. Так, например, сущность Category имеет следующие поля: App\MyBundle\Entity\Category: type: entity repositoryClass: App\MyBundle\Repository\CategoriesRepository table: categories id: id: type: integer generator: { strategy: AUTO […]

Symfony 2: удаление связанных сущностей

Допустим есть две связанные сущности, Category и Post, и в yml они выглядят так: App\MyBundle\Entity\Category: … oneToMany: posts: targetEntity: Post mappedBy: category App\MyBundle\Entity\Post: … manyToOne: category: targetEntity: Category inversedBy: posts joinColumn: name: category_id referencedColumnName: id Если оставить в таком виде, то при попытке удалить категорию, в которой есть посты, вылетит такое (или примерно такое) исключение […]