SQLFilter 内で symfony2 のサービス コンテナを取得する可能性はありますか、それともサービスを SQLFilter として直接使用できますか?
これが「クリーンな」方法ではないことはわかっていますが、クエリの最終的な送信が開始される前に直接いくつかのチェックを実行する必要があります (WHERE ステートメントに条件を追加する必要があるため、lifecycle- は使用できません)。この時点でのイベント)。
SQLFilter 内で symfony2 のサービス コンテナを取得する可能性はありますか、それともサービスを SQLFilter として直接使用できますか?
これが「クリーンな」方法ではないことはわかっていますが、クエリの最終的な送信が開始される前に直接いくつかのチェックを実行する必要があります (WHERE ステートメントに条件を追加する必要があるため、lifecycle- は使用できません)。この時点でのイベント)。
きれいではありませんが、これを試すことができます:
<?php
class MyBundle extends Bundle
{
public function boot()
{
$em = $this->container->get('doctrine.orm.default_entity_manager');
$conf = $em->getConfiguration();
$conf->addFilter(
'test',
'Doctrine\Filter\TestFilter'
);
$em->getFilters()->enable('test')->setContainer($this->container);
}
}