title: When should Doctrine filters be disabled in the SonataAdmin workflow?
body: <p>I'm sure this is a common ask, I need softdeletable and similar filters off in SonataAdmin, until now I've been doing:</p>
  
  <pre><code>use Sonata\AdminBundle\Admin\Admin as BaseAdmin;
  
  class Admin extends BaseAdmin
  {
      /**
       * {@inheritdoc}
       */
      public function configure()
      {
          /**
           * This executes everywhere in the admin and disables softdelete for everything, if you need something cleverer this should be rethought.
           */
          $filters = $this-&gt;getModelManager()-&gt;getEntityManager($this-&gt;getClass())-&gt;getFilters();
  
          if (array_key_exists('approvable', $filters-&gt;getEnabledFilters())) {
              $filters-&gt;disable('approvable');
          }
  
          if (array_key_exists('softdeleteable', $filters-&gt;getEnabledFilters())) {
              $filters-&gt;disable('softdeleteable');
          }
      }
  }
  </code></pre>
  
  <p>Which causes a number of problems, one, it needs the conditionals because the admin classes are configured twice, once to build the nav, and again to build interfaces, two, the admin classes are instantiated frontend on a cold (APC maybe?) cache, which is pretty uncool.</p>
  
  <p>Where are you meant to put this logic?</p>