Настройка DBAL через Symfony2 для установки charset
-
11-10-2019 - |
Вопрос
Кто-нибудь знает способ настройки DBAL/DOCTRINE2 в файле конфигурации Symfony2 (Symfony-Reloded) YML для выполнения запроса «Установки имен»? Этот вопрос был задан в других местах, но я не смог найти правильный ответ.
http://fossplanet.com/f6/%5bsymfony-users%5d-symfony2-sandbox-database-collation-49626/
Если такого варианта конфигурации нет, как я могу реализовать это с помощью PHP? Или лучше: где это правильное место в проекте Symfony2, чтобы сделать это?
Решение
Это пока невозможно. Я работаю над тем, чтобы разрешить это уже, скоро станет возможным.
Другие советы
Хорошо, просто для любого другого, кто может столкнуться с этой проблемой. Это то, что я сделал:
Я закончил подкласс Symfony\Bundle\FrameworkBundle\Controller\Controller
и представил метод getEntityManager
:
public function getEntityManager()
{
$em = $this->get('doctrine.orm.entity_manager');
static $utf8_set = false;
if (!$utf8_set) {
$em->getEventManager()->addEventSubscriber(new MysqlSessionInit('utf8','utf8_unicode_ci'));
$utf8_set = true;
}
return $em;
}
Поэтому каждый раз, когда я хочу получить доступ к EntityManager
или репозиторий в моих контроллерах (что, конечно, сейчас подкласс DoctrineController
) Я звоню
$this->getEntityManager()
соответствующий
$this->getEntityManager()->getRepository('What\Ever\Entity\I\Am\Looking\For')