ソースを参照

add a new method to return getObjectMetadata

Thomas Rabaix 11 年 前
コミット
020e4ff2ba
2 ファイル変更17 行追加0 行削除
  1. 9 0
      Admin/Admin.php
  2. 8 0
      Admin/AdminInterface.php

+ 9 - 0
Admin/Admin.php

@@ -12,6 +12,7 @@
 namespace Sonata\AdminBundle\Admin;
 
 use Sonata\AdminBundle\Datagrid\ProxyQueryInterface;
+use Sonata\CoreBundle\Model\Metadata;
 use Symfony\Component\Form\Form;
 use Symfony\Component\Form\FormBuilder;
 use Symfony\Component\PropertyAccess\PropertyPath;
@@ -2715,4 +2716,12 @@ abstract class Admin implements AdminInterface, DomainObjectInterface
     {
         return $this->getSecurityHandler() instanceof AclSecurityHandlerInterface;
     }
+
+    /**
+     * {@inheritdoc}
+     */
+    public function getObjectMetadata($object)
+    {
+        return new Metadata($this->toString($object));
+    }
 }

+ 8 - 0
Admin/AdminInterface.php

@@ -26,6 +26,7 @@ use Sonata\AdminBundle\Route\RouteGeneratorInterface;
 use Knp\Menu\FactoryInterface as MenuFactoryInterface;
 use Knp\Menu\ItemInterface as MenuItemInterface;
 
+use Sonata\CoreBundle\Model\Metadata;
 use Symfony\Component\Validator\ValidatorInterface;
 use Symfony\Component\Translation\TranslatorInterface;
 use Symfony\Component\HttpFoundation\Request;
@@ -1005,4 +1006,11 @@ interface AdminInterface
      * @return \Knp\Menu\ItemInterface|boolean
      */
     public function buildTabMenu($action, AdminInterface $childAdmin = null);
+
+    /**
+     * @param $object
+     *
+     * @return Metadata
+     */
+    public function getObjectMetadata($object);
 }